最近在做AC轻量化导出的事情,可以说开始是焦头烂额,因为相关资料很少,怎么获取当前视图?啥玩意,这么成熟的产品肯定有接口啊?经常出现类似的场景~

结合网上搜到的一些资料和自己探索的情况,简要总结下

一、在哪里查找资料

(1)安装完SDK后,在SDK安装路径下有Examples目录,里面有各种示例代码,很丰富,并且还有html文档,有接口的详细说明;自己开发过程中大部分的API都是直接或间接在实例中找到的;
(2)bing搜索,说实话  对于AC二次开发相关知识,是难以搜到准确且丰富的内容的;

(3)官方网站;经个人尝试,没有什么作用;

(4)联系AC中国区的技术支持咨询;准确且及时的沟通,很有效~

(5)github上下载相关仓库,不失为一种快速的方法;

二、AC二次开发特点

(1)AC软件需要授权,可以联系AC中国区技术支持提供试用,当然也可以....你知道我在说什么;

(2)SDK下载不是公开的,并且二次开发也是需要授权的,如果有条件,可以联系AC技术支持;

(3)要进行二次开发肯定要了解软件操作,那么去哪找教程?完全不用去网上胡乱一通搜索,因为在打开AC的帮助选项卡,里面有详细的操作帮助文档,材质相关的?贴图怎么设置?参数怎么调整,应有尽有!

(4)SDK自带的Examples里面的示例项目里基本覆盖了大部分API使用,并且有html文档介绍各个接口的功能,参数,用法等详细介绍;

三、导出模型相关接口

(1)可以参考Examples下面的3D_Test、ModelAccess_Test、Plan_Dump、Geometry_Test等项目,当然在预研API过程中 经常会用到VS文件夹中中搜索内容的方法,也就是地毯式搜索,虽然需要甄别搜索结果,但是亲测了解一些API用法是很有效的,这样来说也就是其他项目也要参考到的;

(2)AC中提供了获取模型、项目信息、视图、构件、构件相关信息(几何、材质、属性、楼层、图层等)接口,在这里不详细的展开描述了,值得一提的是AC没有直接提供获取构件三角化几何信息的接口,但是提供了获取构件轮廓及进而获取将轮廓拆分为凸多边形轮廓的方法,那么如果你有相关需求,就知道该怎么做了,没错,Delaunay剖分!可以自己用第三方库要做这个事情,也可以用ACSDK中的DelaunayTriangulation.h来做这个事情。

(3)亲测,AC的api不太友好,但是sdk提供的帮助文档及示例项目足够丰富,也就意味着涉及到ACapi方面工作时,时而进展迅速,时而慢如爬行,在进行工作前最好先花点时间预研API,将需要的api找到且大概弄懂,那么对于工作量大概就有了估算。

附一张最后导出模型到某BIM格式文件后展示的效果图

Archicad二次开发-模型数据导出相关推荐

  1. article.app.php,【求助】修改app\portal\AdminArticle.php二次开发提交数据出错的疑问

    [求助]修改app\portal\AdminArticle.php二次开发提交数据出错的疑问 在使用thinkcmf的portal模块进行二次开发,需要对文章栏目分离管理,我复制了article的PH ...

  2. archiCAD二次开发

    archiCAD二次开发 1,接触了一段时间,记录一下开发中的一些方法及碰见的问题. 一,需要准备的开发资料 1,Visual Studio 2017 (下载的开发包里面的msdn有要求用2017开发 ...

  3. JAVAWEB开发之SpringMVC详解(二)——高级开发、数据回显、参数绑定集合、图片上传、json交互、validation校验、异常处理、RESTful支持、拦截器

    知识回顾 springmvc框架 用户请求url到DispatcherServlet前端控制器,相当于中央调度器,降低系统各组件之间的耦合度. DispatcherServlet前端控制器通过Hand ...

  4. TFS二次开发系列:七、TFS二次开发的数据统计以PBI、Bug、Sprint等为例(一)

    在TFS二次开发中,我们可能会根据某一些情况对各个项目的PBI.BUG等工作项进行统计.在本文中将大略讲解如果进行这些数据统计. 一:连接TFS服务器,并且得到之后需要使用到的类方法. /// < ...

  5. Archicad二次开发——MessageBox、USstring转字符、打开保存文件的对话框获取选择的地址、获取文件信息

    先吐槽一句,Archicad的二次开发实在太不友好(我技术太菜). 1.MessageBox MessageBox(NULL, "message","title" ...

  6. 二次开发mysql数据反推_Discuz二次开发之数据库操作

    一.discuz数据操作之查: 1.fetch_all DB::fetch_all(sql, $arg = array());//取出符合条件的所有数据 sql为查询语句,$arg为绑定参数 例:$r ...

  7. UG NX二次开发(C#)-文件-导出图像

    1 前言 在UG NX中,可以通过交互操作导出模型的图像,这个是比较简单的,本文介绍下如何采用NXOpen(C#)来导出图像. 2 在UG NX打开下的操作 在UG NX图形界面已经打开的情况下,通过 ...

  8. Archicad二次开发——元素

    1.获取指定元素 Archicad通过guid获取指定元素 获取guid的方法:在样例代码的browser control里可以获得选中构件的guid 获取指定元素的样例: API_Element e ...

  9. Archicad二次开发——开发环境配置

    1.开发环境Visual Studio2017 安装开发工具包,并把开发工具包放在d:\Documents\Visual Studio 2017\Templates\ProjectTemplates ...

最新文章

  1. 分类回归loss函数汇总分析
  2. 神经网络有什么理论支持? 本文作者:AI研习社 2017-11-08 18:30 导语:问:神经网络有什么理论支持? 答:目前为止(2017 年)没有什么特别靠谱的。 雷锋网按:本文原作者袁洋
  3. 如何转换指定 波长 到 RGB 颜色?
  4. cx oracle 配置,cx_Oracle的配置啊。。终于搞出来了
  5. 李涓子 | 机器智能加速器:大数据环境下知识工程的机遇和挑战
  6. unity3d之控制人物转向移动并播放动画
  7. 认识线程 java 1615387415
  8. rtt面向对象oopc——3.对官方IO设备模型框架图的补充绘图
  9. 判断回文数 java_java如何判断回文数
  10. 第U题:Java BigDecimal解决··Noder现在上初三了,正在开始复习中考。他每天要计算型如..............
  11. tsplay 打流,EasyICE测试
  12. html中图片为什么反了,HTML5 canvas如何实现图片反色
  13. 计算机中硬盘容量的单位,硬盘容量的单位和计算单位是什么?
  14. 电脑使用变慢七大原因全解析
  15. linux vi面板如何复制一行
  16. c语言乘法运算结果小数位数,如何用c语言计算小数点后位数
  17. H5营销海报如何制作,在线制作平台分享
  18. 华为android9王者荣耀卡,华为mate9玩王者荣耀怎么样 mate9玩王者荣耀卡吗
  19. 13 分钟速览 WWDC22
  20. java不等于_java中不等于怎么表示

热门文章

  1. 最新怪兽充电宝 共享充电宝源码
  2. Golang基础——统计字符串中汉字的数量
  3. 判断汉字的数量(golang)
  4. 什么?你还不会油猴脚本
  5. 基于stm32的位置和速度双闭环PID直流电机控制
  6. 解决电脑无法休眠的问题如下
  7. mybatis一对多sql写法
  8. MS2109 HDMI转USB 高清视频传输方案
  9. QT项目一:俄罗斯方块游戏
  10. Windows下oracle client安装exp导出imp导入表