随笔分类 - Civil3D .net 二次开发
摘要:根据Autodesk 论坛中的帖子修改的测试代码 在其他帖子中看到自己曾经写过类型的代码, 可惜找不到了。 前提: 采样线编组采样源已经设置完毕: 如下图: 目标: 测试代码: [CommandMethod("QtoTest")] public void C_QtoTest() { CivilDoc
阅读全文
摘要:我在autodesk论坛中的发的相关帖子: 加宽过渡段不够平滑 how to add smooth AlignmentTransition 把相关的代码发到此处: 使用方法AddWidening时不会读取命令设置里的值, 需要使用方法AddAutoWidenings才行。 [CommandMetho
阅读全文
摘要:对于scs类型的曲线, 交点坐标貌似没有直接给出, 现有api给出的是s或者c的交点, scs交点坐标需要自己计算才能得到。 在autodesk论坛中看到了这篇>>帖子<<, 代码抄录如下: vb.net代码: Private Function GetSCSPI(scs As AlignmentSC
阅读全文
摘要:civil 3d中国本地化包中有一个多级边坡部件, DaylightWithExternalFile, 因为其中以一行代码有问题, 一直没法用, 以前也没仔细研究其中的错误出在哪里。 最近需要模仿其功能, 从文件读取部件(civil 3d中的subassembly)参数, 之后创建部件, 于是仔细研
阅读全文
摘要:从atc文件中导入部件但挡墙dwg中, 工具选项板对应的atc文件与创建部件pkt文件中的atc文件稍有区别, 主要体现在dll文件的路径上, 另外数据类型名称, 需要首字母大写, 比如Double不能写成double, 如果是小写, 导入过程中识别不了部件的参数... 测试代码如下: public
阅读全文
摘要:集合嵌套的层级比较多, 不熟悉API的话很难找到创建要素线的方法,测试代码贴到这里, 方便有需要写类似代码的朋友借鉴。 如何创建无场地内的要素线需要进一步研究。 除了创建要素线外, 还可以创建路线、纵断面, 有兴趣的朋友们可以自己研究一下。 以下代码在civil 3d 2022下测试。 public
阅读全文
摘要:QQ群友提出的问题, 当问点编组设置用户自定义属性分类并修改自定义属性值后, 想删除自定义属性时提示属性正在使用, 无法删除..... 为实现删除功能, 使用COM API, 顺利实现删除。 测试代码如下: civil 3d版本为2022, "AeccXUiLand.AeccApplication.
阅读全文
摘要:在AU社区中搜索到的帖子,留存备忘。 代码复制至此: public static class ViewportExtensions { /// <summary> /// Returns the Viewort type: /// 0 = undefined, /// 1 = Plan, /// 2
阅读全文
摘要:civil 3d中要素线及放坡相关的.net api基本没有开放, com api也只有要素线有有限的一些功能, 有时需要要素线到曲面的投影线, 这把我卡了很长时间。 今天想到了曲面有获取点到曲面投影的功能, 所以利用这个功能, 实现了求取直线到曲面投影的方法。 基本的思路是: 直线起点投影到曲面,
阅读全文
摘要:Win7 简体中文版 Autocad civil 3d 2018简体中文版 Visual studio 2015社区版 C#语言 如下图, 使用RibbonPanelBreak分隔, 创建Slide-Out Panel(我不知道这个描述是否准确)。 按钮能够正常创建, 命令也能正常发送。 上图中的按
阅读全文
摘要:原贴链接 第 1 条消息(共 2 条) Arun.Thiriyat 24 次查看, 1 条回复 14 小时之前 Profile Style Collection C# Is there any way to get profile styles in the current dwg. I want
阅读全文
摘要:AutoCAD Civil 3D .Net二次开发一书中第11.2节使用customdraw实现了纵断面图标尺的显示, 对于不熟悉c++的用户来说, 掌握这部分内容有些困难, 今天就用另一种方式来实现同样的功能。 这里涉及到的主要方法与前一篇帖子类似, 都是使用的DrawableOverrule。
阅读全文
摘要:昨天同事提出了这样一个需求, 要让曲面的点位高程标签与屏幕平行, 以便于查看, 如下图: 其实这个实现起来很简单: 不知道大家对这个教程是否熟悉, 如果熟悉的话, 问题就相当简单。 直接修改样例代码, 几行代码就搞定了。 public class LabelOverrule : DrawableOv
阅读全文
摘要:为了求两个曲面的交线, 采用创建体积曲面并提取高程为0的等高线方法来迂回实现, 因缺少.net api, 不得不使用com api, 对于不熟悉Com用法的朋友(比如我自己), 可能会卡在这样那样的问题上, 这些问题在网络上能搜索到的有效信息比较少, 因而解决起来也比较麻烦。 难点在于类型的转换,
阅读全文
摘要:在Civil 3D程序设计中, 经常会返回一些ObjectIdCollection, 这些ObjectId对应的对象具体是什么类型呢? 在需要打开对象进行操作, 不知道具体类型, 代码可能就写不下去, using (Transaction tr = doc.TransactionManager.St
阅读全文
摘要:Civil 3d曲面分析功能很强大, 但其分析样式过于自由, 由于自由度过大, 用户的使用体验并不好(个人偏见,不一定对)。 Map3D中的样式, 可以使用USGS国家地理调色板的色带, 结果相对漂亮, 于是产生了将其移植到Civil 3D中的想法, 自己写了一部分代码, 运行结果如下: 代码片段(
阅读全文
摘要:QQ群中以为朋友提出这么个需求, 要输出路线上任意一点处切向的方位角, 我就想如果自己写程序的话, 有没有相应的API可以实现呢? 找了半天才找到, 原因是自己的英语不好, API reference里是用Bearing来表示的, 有了这个方法, 自己可以很方便的来实现自己的需求, 测试代码就不贴了
阅读全文
摘要:OpenFileDialog ofd = new OpenFileDialog(); ofd.Title = "Select PointFiles to import"; ofd.CheckFileExists = true; ofd.Multiselect = true; if (ofd.Show
阅读全文
摘要:今天晚上一位朋友在询问纵断面图创建时纵断面标签集相关的问题, 我在.NET API reference中找了很长时间, 也没能找到自己想要的方法, 后来实在没办法, 才抱着试一试的态度去查COM API, 没想到COM API里有相应的方法! 所以以后遇到类似情况, 要尽早查找COM API, 以免
阅读全文
摘要:第193页 代码行号30、34行中注释 “附件模块” 应为 “附加模块”. 2019年11月27日10:51:18 97页代码第3行 staticlong应为static long,中间少了一个空格。
阅读全文