乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
楼主: Eloquintet

我需要帮助修改现有的例程

[复制链接]

48

主题

277

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
481
发表于 2006-12-23 12:41:23 | 显示全部楼层
好的,我明白了,我需要多解释一点。我上传的图纸包含2-1/2"直径的不同场景。我相信管子。第一组包含使用从对话右上角挑选的自定义冲压的组件。然后我做了一个空闲端,一个中心支撑,然后一个驱动端细节。然后我做了一个包含一些附件的绘图,如筋膜/瓷砖支撑。然后我为双阴影组件绘制了相同的空闲中心和驱动细节。然后我重复了这个过程,手动冲压电1/2,然后是电扩展冲压。我还有几个图纸,其中有其他管的场景,但它遵循相同的逻辑。这有任何意义吗?如果我有一个双阴影组件,一个中心线将在阴影1层上,另一个在阴影2层上。青色阴影滚动线也是如此。让我知道这是否对任何人有意义,因为我整天都在画这些东西,所以这些术语对我来说很熟悉。
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-12-24 13:12:17 | 显示全部楼层
首先更改DrawCLines子级以包含一个字符串参数,该参数提供图层名称
  1. Private Sub DrawCLines(Trans As Variant, sLayer As String)
  2.     Dim Cline1(0 To 0) As AcadObject
  3.     Dim lclStartPoint As Variant
  4.     Dim lclEndPoint As Variant
  5.       
  6.     Set Cline1(0) = ActSpc.AddPolyline(Trans)
  7.     Cline1(0).Layer = sLayer
  8.     Cline1(0).color = acGreen
  9.     Cline1(0).Linetype = "CENTER"
  10.    
  11. End Sub

然后使用查找查找所有出现的DrawCLines
并在适当的情况下添加“Shade1”或“Shade2”。
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-12-24 16:48:50 | 显示全部楼层
我个人讨厌2dPolylines,显示的代码不是vba的良好介绍。
如果一个人正在制作大量的极点,那么它们也可以直接传递给子,而不是在代码上加倍
  1. Dim Ang As Double
  2. Ang = MainAngle - (Pi / 2)
  3. CLP1 = TDU.PolarPoint(M1, Ang, D1)
  4. CLP2 = TDU.PolarPoint(M2, Ang, D1)
  5. CLP3 = TDU.PolarPoint(M3, Ang, D1)
  6. CLP4 = TDU.PolarPoint(M1, Ang, D2)
  7. CLP5 = TDU.PolarPoint(M2, Ang, D2)
  8. CLP6 = TDU.PolarPoint(M3, Ang, D2)
  9. If ThisDrawing.IsSingleShade Then
  10.     If ThisDrawing.IsCS Then  ' center support single shade
  11.         DrawCLines CLP1, CLP3, "Shade1"
  12.         DrawCLines CLP2, CLP3, "Shade1"
  13.     Else                        ' end condition single shade
  14.         DrawCLines CLP1, CLP2, "Shade1"
  15.     End If
  16. Else
  17.     If ThisDrawing.IsCS Then    ' center support double shade
  18.         DrawCLines CLP1, CLP3, "Shade1"
  19.         DrawCLines CLP2, CLP3, "Shade1"
  20.         DrawCLines CLP4, CLP6, "Shade2"
  21.         DrawCLines CLP5, CLP6, "Shade2"
  22.     Else                        '   end condition double shade
  23.         DrawCLines CLP1, CLP6, "Shade1"
  24.         DrawCLines CLP4, CLP5, "Shade2"
  25.     End If
  26. End If
  27. Private Sub DrawCLines(StartPoint As Variant, EndPoint As Variant, sLayer As String)
  28.     Dim Cline1  As AcadLWPolyline
  29.     Dim Pts(3) As Double
  30.     Pts(0) = StartPoint(0): Pts(1) = StartPoint(1)
  31.     Pts(2) = EndPoint(0): Pts(3) = EndPoint(1)
  32.     Set Cline1 = ThisDrawing.ModelSpace.AddLightWeightPolyline(Pts)
  33.     Cline1.Layer = sLayer
  34.     Cline1.color = acGreen
  35.     Cline1.Linetype = "CENTER"
  36.    
  37. End Sub

回复

使用道具 举报

48

主题

277

帖子

5

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
481
发表于 2006-12-24 17:32:35 | 显示全部楼层
首先谢谢你的帮助。我装上了新的潜艇,并增加了翻译。当我在选择了点之后运行它,我得到了一个执行错误。我没有包括你第二篇文章中的代码,因为我认为它更多的是建议应该如何做,这是正确的吗
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-7 04:39 , Processed in 1.386456 second(s), 58 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表