2013-07-21 2 views
3

저는 Tkinter에서 캔버스 객체에 렌더링 된 기호 방정식을 다루는 프로그램을 만들려고합니다. 프로그램은 방정식을 그릴 수 있어야하며, 사용자가 방정식을 클릭하면 클릭 한 기호를 알아야합니다.방정식을 Tkinter에서 캔버스 객체로 표현하기

내가 수동으로 캔버스가 넣어 무엇을 상징 반대하고 그들은 단지 텍스트가 누구의 클릭 이벤트 I 객체있어 알려주는 수학 렌더링 프로그램을 작성할 수 있습니다

나는이 일을 몇 가지 방법을 생각했습니다 정상적인 방법을 감지 할 수 있습니다. 그러나 이것은 많은 중복 노력처럼 보이고, 나는 그것을 아주 예쁘게 만들 수 없을 것입니다.

라이브러리를 사용하여 방정식을 이미지로 렌더링 한 다음 다른 기호가있는 대략적인 위치를 알아 내고 클릭을 감지하고 사용자가 클릭 한 위치의 기호를 결정하도록 내 코드를 작성할 수 있습니다. 이것은 고의적이며 신뢰할 수없는 것으로 들립니다. 게다가 기호가 어디에 있는지 감지 할 수있는 코드를 작성해야합니다.

다른 아이디어?

답변

-1

문자열에서 방정식을 얻는 것이 가장 좋습니다.

이것은 최선의 방법은 아니지만 여전히 유효한 옵션이므로 문자열을 그대로 가져온 다음 x 값을 eval() 기능을 사용하는 x 값으로 바꿀 수 있습니다.

equation = "2^x" 

for x in range(length of graph): 
    x2 = x-1 #to draw a line from this point to the previous one. 
    canvas.create_line(x, eval(equation), x2, eval(equation.replace('x', "x2")) 
+0

나는 방정식을 기호로 나타내지 않고 그래프로 나타내려고합니다. –