明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1183|回复: 2

请教下如何用sendcommand 使用flatten命令

[复制链接]
发表于 2021-5-13 14:10:23 | 显示全部楼层 |阅读模式

我用下面的方式没有成功。
Sset1是选择集,确认有选择到图元。
烦请高手赐教。谢谢!

det = axSSet2lspEnts(SSet1)
ThisDrawing.SendCommand "flatten" & vbCr & det & vbCr & vbCr & "no" & vbCr & vbCr


Function axSSet2lspEnts(ByVal SSet As AcadSelectionSet) As String
    If SSet.Count = 0 Then Exit Function

    Dim enthandle As String
    Dim strEnts As String
    enthandle = SSet.Item(0).Handle
    strEnts = "(handent " & Chr(34) & enthandle & Chr(34) & ")"

    If SSet.Count > 1 Then
        Dim i As Integer
        For i = 1 To SSet.Count - 1
            enthandle = SSet.Item(i).Handle
            strEnts = strEnts & vbCr & "(handent " & Chr(34) & enthandle & Chr(34) & ")"
        Next i
    End If

    axSSet2lspEnts = strEnts
End Function

发表于 2021-5-13 15:37:45 | 显示全部楼层
自己先手工做一次,看差别在哪里。
 楼主| 发表于 2021-5-13 16:34:02 来自手机 | 显示全部楼层
谢谢老大关注。当图元过多时,给det赋值也好慢。干脆换了种方式:thisdrawing.sendcommand “_flatten” & vbCr & “_all” & vbCr & ”N” &vbCr & vbCr, 这样可以了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 04:51 , Processed in 0.136261 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表