Я пытаюсь написать небольшую программу рисования с Livecode, которая покажет длину нарисованной линии над линией, чтобы она была доступна для редактирования, мне также нужно отображать углы многоугольника для редактирования. Пользователь должен иметь возможность выбрать один раздел многоугольника, щелкнув мышью по размеру. Это будет загружать длину строки в поле справа для редактирования. После ввода правильного числа рисунок будет перерисовываться. (Вероятно, я могу понять эту часть, используя «точки» многоугольника). Я включил экранный снимок того, как должна выглядеть программа. Я надеялся, что он отобразит эти цифры, когда изображение будет нарисовано пользователем. Мне жаль, что я не включил какой-либо код, однако я даже не знаю с чего начать. Я написал несколько программ, связанных с базами данных, но это моя первая попытка использовать рисунки. Заранее благодарю за любой совет!! http://i.stack.imgur.com/gfKS9.jpgЧертежные линии с размерами В Livecode
ответ
Чтобы получить угол вы можете использовать некоторые тригонометрии. если у вас есть две точки (которые вы можете получить с помощью
the points of graphic "myPolygon"
Тогда вы получите одно очко в каждой строке. Если вы хотите, чтобы вычислить угол между двумя точками, которые можно использовать некоторые тригонометрии. Если у вас есть точка x1, y1 и другая точка x2, y2 вы получите угол, используя
put atan2(y2-y1, x2-x1) into tRad
угол будет в радианах от -pi до + пи так что вам нужно, чтобы преобразовать его в градусы, если вы хотите больше «обычных» степеней:
put tRad*180/pi into tDeg
Угол, который вы получаете, соответствует системе координат x-y. Поэтому, если вам нужен угол между линиями, вам нужно сделать два расчета и добавить углы.
Вы не можете изменить размер одного сегмента, но все многоугольники. Чтобы изменить размер линии ...
set the linesize of graphic "polygon" to 4
Paolo
Паоло, спасибо за ответ. Изменение «lineize» просто изменяет толщину нарисованной линии, а не длину. Разве что я чего-то не хватает? –
Приносим извинения, что фотография не была отправлена, она находится здесь ..... http://i.stack.imgur.com/gfKS9.jpg –
Вы посмотрели, как LC хранит координаты вашего чертежа? Вы должны иметь возможность редактировать эти значения, сохраненные в свойствах, с помощью обновленных измерений, а затем перерисовывать все окно. – Tate83
Спасибо! Знаете ли вы, где я могу найти эти координаты? Я знаю, где хранятся точки, но я понятия не имею, как их перевести в степень угла. –