感谢您提出 Livecode 脚本块以绘制和填充一组等边三角形的任何帮助。
我正在开发一个开源应用程序,它可以帮助人们创建和分享具有分形图案的故事。
一个关键的挑战是绘制三角形来代表故事的以下元素:
- 吸引子
- 挑战
- 机会(解决紧张局势的状态变化)
- 战略
- 测试
- 决定
上面六个标准故事元素中的每一个都将在应用程序中显示为等边三角形。反过来,每个元素都将与一种独特的颜色相关联——黄色、红色、橙色、紫色、蓝色或绿色。
我想要一个 Livecode 脚本来绘制六个组合在一起的三角形——就像饼片一样——形成一个代表整个故事的六边形。
每个彩色部分的透明度(混合级别)将表明故事的作者(或受邀审稿人)认为故事的该元素是完整的程度。
我希望在 Livecode 中提出一个脚本,它将:
快速画出六个三角形组成六边形
用相关的颜色填充每个三角形(每种颜色的初始混合级别几乎是透明的 90%)
根据填充颜色的名称,为六个三角形中的每一个分配一个唯一的短名称
将六个三角形组合在一起,以便将它们一起拖动到屏幕上的新位置。
是否有任何脚本(或块)可以帮助解决这个问题?非常感谢任何示例代码或链接,以帮助缩短我的 Livecode 学习曲线。
最好的,
马克弗雷泽
====== 进度更新!====== [8 月 2 日,东部时间下午 6 点]
我刚刚找到并改编了大学的 Lloyd Rieber 的多边形生成脚本。创造六边形的乔治亚州。有没有办法调整它,以便它可以创建一个等边三角形,然后可以复制和旋转以填充六边形?
on mouseUp
global tpoints
if exists(grc "HexagonCanvas" of this card) then delete grc "HexagonCanvas"
lock screen
create grc "HexagonCanvas"
set the loc of grc "HexagonCanvas" to "140,140"
set the opaque of grc "HexagonCanvas" to true
-- resize the new grc
get the rect of grc "HexagonCanvas"
add 80 to item 4 of it
set the rect of grc "HexagonCanvas" to it
put the topleft of grc "HexagonCanvas" into TL
put the topright of grc "HexagonCanvas" into TR
put the bottomleft of grc "HexagonCanvas" into BL
put the bottomright of grc "HexagonCanvas" into BR
put the width of grc "HexagonCanvas" into twidth
put the height of grc "HexagonCanvas" into theight
put trunc(twidth/4) into twidthquart
put trunc(theight/2) into theighthalf
#=========set the points for the "free" hexagon polygon==================
put empty into tpoints
put (item 1 of TL + twidthquart, item 2 of TL) into tpoints
# for the first line of tpoints "put into"
put Cr& (item 1 of TL, item 2 of TL + theighthalf) after tpoints
put CR& (item 1 of BL + twidthquart, item 2 of BL) after tpoints
put CR& (item 1 of BR - twidthquart, item 2 of BR) after tpoints
put Cr& (item 1 of BR, item 2 of BR - theighthalf) after tpoints
put CR& (item 1 of TR - twidthquart, item 2 of TR) after tpoints
put CR& (item 1 of TL + twidthquart, item 2 of TL) after tpoints
set the points of grc "HexagonCanvas" to tpoints
set the style of grc "HexagonCanvas" to "polygon"
set the backgroundColor of grc "HexagonCanvas" to blue
set the blendlevel of grc "HexagonCanvas" to "60"
choose browse tool
end mouseUp