将插入的表格旋转到UCS
我使用以下例程插入新表:(defun cd:ACX_AddTable (Space Pb Rows Cols RowH ColH)
(vla-AddTable
Space
(vlax-3d-point (trans Pb 1 0))
Rows
Cols
RowH
ColH
)
)
例子:
(cd:ACX_AddTable (cd:ACX_ASpace) (getpoint) 5 5 10 30)
但我不知道如何将插入的表格旋转到当前UCS。
我猜这和方向属性有一些共同点,但我被困在这里。。。
有什么帮助吗?
子程序:
(defun cd:ACX_ASpace ()
(if (= (getvar "CVPORT") 1)
(vla-item (cd:ACX_Blocks) "*Paper_Space")
(cd:ACX_Model)
)
)
(defun cd:ACX_Blocks ()
(or
*cd-Blocks*
(setq *cd-Blocks* (vla-get-blocks (cd:ACX_ADoc)))
)
*cd-Blocks*
)
(defun cd:ACX_Model ()
(or
*cd-ModelSpace*
(setq *cd-ModelSpace* (vla-get-ModelSpace (cd:ACX_ADoc)))
)
*cd-ModelSpace*
)
(defun cd:ACX_ADoc ()
(or
*cd-ActiveDocument*
(setq *cd-ActiveDocument*
(vla-get-ActiveDocument (vlax-get-acad-object))
)
)
*cd-ActiveDocument*
) 试试这个
(setq table
(vla-AddTable
Space
(vlax-3d-point (trans Pb 1 0))
Rows
Cols
RowH
ColH
)
)
(vlax-put table 'direction (trans '(1 0 0) 1 0 T)) 如何重新生成此??
我从来没有这个问题。如果你只是插入表格,看起来是这样的。
vla更新没有帮助,但只要开始填充单元格或调整行、列,它就会恢复正常。
即使是vla移动也会使其再生。
(setq table
(vla-AddTable
Space
(vlax-3d-point 0.0 0.0 0.0)
Rows
Cols
RowH
ColH
)
)
(vlax-put table 'direction (trans '(1 0 0) 1 0 T))
(vla-move table (vlax-3d-point 0.0 0.0 0.0) (vlax-3d-point (trans Pb 1 0)))
页:
[1]