2015-01-05 4 views
0

Я пытаюсь отобразить треугольник в изображении. К сожалению, не отображается треугольник, и я не могу найти причину этого. Где я испортил? Вот код:Треугольник не отображается

double hypotenuse = Math.sqrt(Math.pow((width_index-standard),2)+Math.pow((high_index-base_index),2)); 
    angle *= Math.asin(((width_index-standard)/hypotenuse)); 
    angle = angle*(180/Math.PI); 
    angle = Math.round(angle); 
    TextView t = (TextView) findViewById(R.id.result_angle); 
    t.setText(String.valueOf(angle)); 

    // return_b is the bitmap to be displayed 
    Canvas canvas = new Canvas(return_b); 
    Path p = new Path(); 
    Paint paint = new Paint(); 

    p.moveTo(standard, (base_index+(float)hypotenuse)); 
    p.lineTo(standard, height-1); 
    p.moveTo(standard, height-1); 
    p.lineTo(width_index, high_index); 
    p.moveTo(width_index, high_index); 
    //p.addArc(standard, (base_index+(float)hypotenuse), width_index, high_index, 0, (float)((-1)*angle)); 
    p.lineTo(standard, (base_index+(float)hypotenuse)); 
    p.close(); 
    paint.setColor(Color.BLACK); 
    paint.setStyle(Paint.Style.FILL); 
    paint.setAntiAlias(true); 
    canvas.drawPath(p, paint); 

Спасибо.

+0

@azurefrog Я думаю, что «не отображает треугольник» - это достаточно четкое описание того, что пойдет не так, в программе, которая явно должна отображать треугольник. –

+0

Я вижу, что вы пытаетесь отобразить материал на новом холсте, но я не вижу никаких доказательств того, что холст будет связан с чем-либо в иерархии представлений. – laalto

+0

@laalto 'return_b' - это растровое изображение, которое будет отображаться. Это связано с холстом. – SalmonKiller

ответ

0

Вопрос был в moveTo s. Когда я удалил их, появился треугольник.

Смежные вопросы