- UID
- 21284
- 积分
- 0
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2002-12-20
- 最后登录
- 1970-1-1
|
发表于 2004-9-11 09:58:42
|
显示全部楼层
如果拖动的目的单单是为了移动对象位置,acedDragen更简单,速度也可能更块.acedDragen将被移动对象限制在选者集,对其中的所有对象调用transform.相比较而言acedJig要强大的多,它对于对象的限制更少.在概念上讲,可以充分利用的特征有:
a)jig仅仅要求对象实现worlddraw,意味着对象不仅是模型空间对象,而且可以是new对象,实际上jig大多用在新对象建立过程中.
b)上述代码中最重要概念是,被jig拖动的对象不一定是实际对象,而是某种代理对象.被jig的对象在worlddraw的过程中分别调用其他对象的方法.
c)代理对象的概念扩展后就是,jig可以同时拖动多个对象,而且对象的数量和类别在拖动中可以改变.
d)jig对象不仅仅限制在对于对象的transform上,既不仅可以改变对象的位置而且可以改变形状,或者讲可以改变对象的任意数据.
e)在jig的过程中,多个同时拖动的对象可以改变不同的参数和做不同的变动.
f)对于jig代理对象,没有必要向上述代码中用new创建,也可以直接在堆栈中创建,append函数是没有必要的. |
|