製図アプリを作りたいのですが、円弧を下記のコードで描くと、タッチした所が扇形の中心になりません(おそらく円弧を囲む矩形の対角線の交点がタッチした位置になっていると思われます)。タッチした位置を扇形の中心になるようにするにはどうすれば良いのか教えていただければ幸いです。
from scene import * import ui class DrawScene(Scene): def setup(self): self.xybegin = Point(0,0) def draw(self): background(0.1, 0, 0) arc_path = ui.Path() radius = 200 start = math.radians(0) finish = math.radians(45) x = radius * math.cos(start) y = radius * math.sin(start) arc_path.move_to(x, y) arc_path.add_arc(0,0, radius, start, finish) arc_path.line_width=1 self.arc = ShapeNode(arc_path) self.arc.fill_color = 'clear' self.arc.stroke_color = 'red' self.arc.position=(self.xybegin.x,self.xybegin.y) self.add_child(self.arc) def touch_began(self, touch): x = touch.location.x y = touch.location.y self.xybegin = Point(x,y) if __name__ == '__main__': run(DrawScene())
あなたの回答
tips
プレビュー