컴터에서 블루투스로 데이터를 보내면 핸폰으로 데이터받아서 오실로스코프로 그려주는 소스인데요
그래프까진 잘나와요 근데 아무리 폭을 넓혀도 딱 그 부분만 나오고 그 뒷부분을 볼수가 없어요
폭을 더 땅겨서 좀더 전체적인 그래프를 볼수있거나 실시간으로 그래프선을 따라 화면이 바뀌었으면 하는데
어떻게 해야할까요 ㅜㅜ
 
 
package org.projectproto.yuscope;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
public class WaveformView extends SurfaceView implements SurfaceHolder.Callback{
// plot area size
private final static int WIDTH = 320;
private final static int HEIGHT = 240;
private static int[] ch1_data = new int[WIDTH];
private static int[] ch2_data = new int[WIDTH];
private static int ch1_pos = 100; //HEIGHT/2;
private static int ch2_pos = 119; //HEIGHT/2;
private WaveformPlotThread plot_thread;
private Paint ch1_color = new Paint();
private Paint ch2_color = new Paint();
private Paint grid_paint = new Paint();
private Paint cross_paint = new Paint();
private Paint outline_paint = new Paint();
public WaveformView(Context context, AttributeSet attrs){
super(context, attrs);
getHolder().addCallback(this);
// initial values
for(int x=0; x<WIDTH; x++){
ch1_data[x] = ch1_pos;
ch2_data[x] = ch2_pos;
}
plot_thread = new WaveformPlotThread(getHolder(), this);
ch1_color.setColor(Color.YELLOW);
ch2_color.setColor(Color.rgb(100, 100, 100));
grid_paint.setColor(Color.rgb(100, 100, 100));
cross_paint.setColor(Color.rgb(70, 100, 70));
outline_paint.setColor(Color.GREEN);
}
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height){
}
public void surfaceCreated(SurfaceHolder holder){
plot_thread.setRunning(true);
plot_thread.start();
}
public void surfaceDestroyed(SurfaceHolder holder){
boolean retry = true;
plot_thread.setRunning(false);
while (retry){
try{
plot_thread.join();
retry = false;
}catch(InterruptedException e){
}
}
}
@Override
public void onDraw(Canvas canvas){
PlotPoints(canvas);
}
public void set_data(int[] data1, int[] data2 ){
plot_thread.setRunning(false);
for(int x=0; x<WIDTH; x++){
// channel 1
ch1_data[x] = HEIGHT-data1[x]+1;
}
for(int x=0; x<WIDTH; x++){
 // channel 1
 ch2_data[x] = ch2_pos;
 }
// channel 2
plot_thread.setRunning(true);
}
public void PlotPoints(Canvas canvas){
// clear screen
 
 canvas.drawColor(Color.rgb(20, 20, 20));
// draw vertical grids
for(int vertical = 1; vertical<10; vertical++){
canvas.drawLine(
vertical*(WIDTH/10)+1, 1,
vertical*(WIDTH/10)+1, HEIGHT+1,
grid_paint);
}
// draw horizontal grids
for(int horizontal = 1; horizontal<10; horizontal++){
canvas.drawLine(
1, horizontal*(HEIGHT/10)+1,
WIDTH+1, horizontal*(HEIGHT/10)+1,
grid_paint);
}
// draw outline
canvas.drawLine(0, 0, (WIDTH+1), 0, outline_paint); // top
canvas.drawLine((WIDTH+1), 0, (WIDTH+1), (HEIGHT+1), outline_paint); //right
canvas.drawLine(0, (HEIGHT+1), (WIDTH+1), (HEIGHT+1), outline_paint); // bottom
canvas.drawLine(0, 0, 0, (HEIGHT+1), outline_paint); //left
// plot data
for(int x=0; x<(WIDTH-1); x++){
canvas.drawLine(x+1, ch2_data[x], x+2, ch2_data[x+1], ch2_color);
canvas.drawLine(x+1, ch1_data[x], x+2, ch1_data[x+1], ch1_color);
}
}
}
 
 
아니면 레이아웃에 메인부분을 고쳐야 할까요?ㅜㅜ
 
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2009 The Android Open Source Project
 
     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at
 
          http://www.apache.org/licenses/LICENSE-2.0
 
     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License.
-->
 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/background_color">
    
        <TextView android:id="@+id/txt_appname"
                android:layout_width="wrap_content"
                android:text="@string/app_name"         
                android:layout_centerHorizontal="true"
                android:textSize="5pt"
                android:textColor="@color/label_color"
                android:textStyle="bold" android:layout_height="wrap_content">
        </TextView>
        
        <RelativeLayout android:id="@+id/Waveform"
                android:layout_below="@+id/txt_appname"
                android:layout_width="wrap_content"
        android:layout_height="wrap_content" >
        <org.projectproto.yuscope.WaveformView android:id="@+id/WaveformArea"
                        android:layout_marginLeft="15px" android:layout_height="242px" android:layout_width="322px"
                        />
                <TextView android:id="@+id/txt_ch1pos"          
                android:layout_width="wrap_content" android:layout_height="wrap_content" 
                    android:textStyle="bold"  android:text="1-"
                    android:layout_alignTop="@+id/WaveformArea" android:layout_marginLeft="5px"
                    android:textColor="@color/ch1_color"/>
                <TextView android:id="@+id/txt_ch2pos"           
                android:layout_width="wrap_content" android:layout_height="wrap_content" 
                    android:textStyle="bold"  android:text="  "
                    android:layout_alignTop="@+id/WaveformArea" android:layout_marginLeft="5px"
                    android:textColor="@color/background_color"/>
    </RelativeLayout>
    
    <LinearLayout android:id="@+id/run_settings"
                android:orientation="horizontal"
                android:layout_alignParentRight="true"
                android:layout_below="@+id/txt_appname"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" android:layout_marginRight="15px">
                <TextView android:id="@+id/txt_status"
                        android:text="@string/status_label"
                        android:textColor="@color/label_color"
                        android:layout_below="@+id/txt_appname"
                        android:layout_width="wrap_content" android:layout_height="wrap_content" />
                <ToggleButton android:id="@+id/tbtn_runtoggle"
                        android:text="@+id/ToggleButton01"
                        android:textOff="@string/status_off"
                        android:textOn="@string/status_on"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content" />
        </LinearLayout>
        
        <LinearLayout android:id="@+id/horizontal_settings"
                android:orientation="vertical"
                android:layout_alignParentRight="true"
                android:layout_below="@+id/run_settings"
                android:layout_width="120px" android:layout_height="wrap_content">
                <LinearLayout android:id="@+id/horizontal_values"
                        android:orientation="horizontal"
                        android:layout_alignParentRight="true"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content">
                        <TextView android:id="@+id/txt_timebase_label"
                                android:text="Timebase:" android:textSize="5pt"
                                android:textColor="@color/label_color"
                                android:layout_width="wrap_content" android:layout_height="wrap_content" />
                        <TextView android:id="@+id/txt_timebase"
                                android:text="@string/timebase_default" android:textSize="8pt"
                                android:textColor="@color/timebase_color" android:textStyle="bold"
                                android:layout_width="70px" android:layout_height="wrap_content" />
                </LinearLayout>
                <LinearLayout android:id="@+id/horizontal_adjusts"
                        android:orientation="horizontal"
                        android:layout_alignParentRight="true"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content">
                        <Button android:id="@+id/btn_timebase_decrease"
                                android:text="<"
                                android:layout_height="35px"
                                android:layout_width="55px" />
                        <Button android:id="@+id/btn_timebase_increase"
                                android:text=">"
                                android:layout_height="35px"
                                android:layout_width="55px" />
                </LinearLayout>
        </LinearLayout>
 
        <LinearLayout android:id="@+id/position_settings"
                android:orientation="vertical"
                android:layout_alignParentRight="true"
                android:layout_below="@+id/horizontal_settings"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" android:layout_marginRight="15px">
                <TextView android:id="@+id/txt_position_label"
                        android:text="Postion"
                        android:textColor="@color/label_color"
                        android:layout_width="wrap_content" android:layout_height="wrap_content" />
                <Button android:id="@+id/btn_position_up"
                        android:text="up" android:textSize="4pt"
                        android:layout_height="35px" android:layout_width="50px" />
                <Button android:id="@+id/btn_position_down"
                        android:text="down" android:textSize="4pt"
                        android:layout_height="35px" android:layout_width="50px" />
        </LinearLayout>
        
        <LinearLayout android:id="@+id/vertical_settings"
                android:orientation="vertical"
                android:layout_below="@+id/horizontal_settings"
                android:layout_width="wrap_content" android:layout_height="wrap_content"
                android:layout_alignLeft="@+id/horizontal_settings">
                <TextView android:id="@+id/txt_position_label"
                        android:text="Scale"
                        android:textColor="@color/label_color"
                        android:layout_width="wrap_content" android:layout_height="wrap_content" />
                <Button android:id="@+id/btn_scale_increase"
                        android:text="inc" android:textSize="4pt"
                        android:layout_height="35px" android:layout_width="50px" />
                <Button android:id="@+id/btn_scale_decrease"
                        android:text="dec" android:textSize="4pt"
                        android:layout_height="35px" android:layout_width="50px" />
        </LinearLayout>
        
        <RadioGroup
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                android:id="@+id/rg_channels"
                android:layout_alignParentLeft="true"
                android:orientation="horizontal"
                android:layout_marginLeft="15px" android:layout_below="@+id/Waveform">
                <RadioButton android:id="@+id/rbtn_ch1"
                        android:textColor="@color/ch1_color"                    
                        android:text="CH1:"
                        android:layout_height="35px"
                        android:textSize="5pt"
                        android:layout_width="70px" android:checked="true"/>
                <TextView android:id="@+id/txt_ch1_scale"
                        android:layout_height="wrap_content"
                        android:text="@string/ch1_scale_default"
                        android:textColor="@color/ch1_color"                    
                        android:textSize="7pt"
                        android:layout_width="60px"/>
                <RadioButton android:id="@+id/rbtn_ch2"
                        android:text="CH2:"
                        android:textColor="@color/ch2_color"
                        android:layout_height="35px"
                        android:textSize="5pt"
                        android:layout_width="70px"/>
                <TextView android:id="@+id/txt_ch2_scale"
                        android:layout_height="wrap_content"                    
                        android:text="@string/ch2_scale_default"
                        android:textColor="@color/ch2_color"
                        android:textSize="7pt"
                        android:layout_width="60px"/>
        </RadioGroup>
                
        <LinearLayout android:id="@+id/bluetooth_settings"
        android:orientation="vertical"
        android:layout_height="wrap_content" android:layout_width="120px"
        android:layout_alignParentBottom="true" android:layout_alignParentRight="true"
        android:layout_marginRight="15px">
            <TextView android:id="@+id/txt_btstatus"
                        android:text="BT status:"
                        android:layout_width="fill_parent" android:layout_height="wrap_content"
                        android:textColor="@color/status_color" />
                <Button android:id="@+id/button_connect"
                android:layout_width="fill_parent" android:layout_height="35px"
                android:text="@string/button_connect" />
        </LinearLayout>
        
</RelativeLayout>