在本课的前面部分,有人指出,当从反应器回调调用时,您需要强制使用 ActiveX 来创建对象。这意味着在必要时覆盖用户选择的对象创建样式(ActiveX,或)。您刚刚更新的代码在函数中包含以下对磁贴绘制例程的调用:gp:Calculate-and-Draw-Tilesentmakecommandgp:command-ended (setq tileList (gp:Calculate-and-Draw-Tiles
;; path data list without correct tile list.
NewReactorData
;; Object creation function.
;; Within a reactor this *MUST* be ActiveX.
"ActiveX"
)
)
两个参数传递给:(原始关联列表形式的列表)和字符串(将设置对象创建样式)。但是看看当前的定义。(如果您忘记了,此函数在gpdraw.ls sp 中定义。下面是声明参数和局部变量的函数部分:gp:Calculate-and-Draw-TilesNewReactorDatagp_PathData"ActiveX"gp:Calculate-and-Draw-Tiles (defun gp:Calculate-and-Draw-Tiles (BoundaryData /
PathLength TileSpace
TileRadius SpaceFilled
SpaceToFill RowSpacing
offsetFromCenter rowStartPoint
pathWidth pathAngle
ObjectCreationStyle TileList)
请注意,当前仅指定了一个参数,并将其标识为局部变量。查看变量的设置方式,这是函数的更远:ObjectCreationStyleObjectCreationStyle (setq ObjectCreationStyle (strcase (cdr (assoc 3 BoundaryData)))) Theis 当前通过检索隐藏在变量(关联列表)中的值在函数内部设置。但现在您需要能够覆盖该值。ObjectCreationStyleBoundaryData 修改 gp:计算和绘制图块以接受对象创建样式参数
|
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-11-11 07:40
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.