Civil 3D 中使用COM API导入DEM数据创建曲面

简介:


Civil 3D提供的基于.net的API和基于COM的API,现在推荐大家使用.net API,但有时也需要使用COM API。 这个例子演示如何使用COM API来导入DEM数据生成Civil 3D曲面。 Civil 3D开发中使用COM API需要添加的引用比较啰嗦,建议使用向导创建项目简化操作,向导能帮助你添加大部分引用,如果还缺什么,自己再添加就简单多了。注意使用COM API,需要勾选AutoCAD 和Civil 3D的interOp相关引用。

 

imageimage

下面是使用COM API导入DEM数据的代码:

// (C) Copyright 2013 by Autodesk 
//

using System;
using Autodesk.AutoCAD.Runtime;
using Autodesk.AutoCAD.ApplicationServices;
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.Geometry;
using Autodesk.AutoCAD.EditorInput;
using System.Windows.Forms;
using Autodesk.AECC.Interop.UiLand;
using Autodesk.AutoCAD.Interop;
using
Autodesk.Civil.ApplicationServices;


// This line is not mandatory, but improves loading performances
[assembly: CommandClass(typeof(LoadDEM_demo.MyCommands
))]

namespace
LoadDEM_demo
{


   
public class MyCommands
    {
 


       
// COM objects:
        private Autodesk.AutoCAD.Interop.IAcadApplication m_oAcadApp = null
;
       
private Autodesk.AECC.Interop.UiLand.IAeccApplication m_oAeccApp = null
;
       
private Autodesk.AECC.Interop.UiLand.IAeccDocument m_oAeccDoc = null
;
       
private Autodesk.AECC.Interop.Land.IAeccDatabase m_oAeccDb = null
;
       
string m_sAcadProdID = "AutoCAD.Application"
;
       
string m_sAeccAppProgId = "AeccXUiLand.AeccApplication.10.0"; //Civil 3D 2013
        //string m_sAeccAppProgId = "AeccXUiLand.AeccApplication.9.0"; //Civil 3D 2012
        private string m_sMessage = ""
;


        [
CommandMethod("LoadDemSurfaceop"
)]
       
public void
LoadDemSurface()
        {

           
try
            {
               
OpenFileDialog ofd = new OpenFileDialog
();
                ofd.Filter =
"USGS DEM( *.DEM) |*.dem|GEOTIFF(*.tif)|*.tif|ESRI ASCII 栅格(*.asc)|*.asc|ESRI ASCII 栅格(*.txt)|*.txt|ESRI 二进制栅格(*.adf)|*.adf"
;
                ofd.FilterIndex = 0;
               
if (ofd.ShowDialog() == DialogResult
.OK)
                {
                   
//use COM
                    m_oAcadApp = (IAcadApplication)System.Runtime.InteropServices.Marshal
.GetActiveObject(m_sAcadProdID);
                   
if (m_oAcadApp != null
)
                    {
                        m_oAeccApp = (
IAeccApplication
)m_oAcadApp.GetInterfaceObject(m_sAeccAppProgId);
                        m_oAeccDoc = (
IAeccDocument
)m_oAeccApp.ActiveDocument;

                        m_oAeccDoc.Surfaces.ImportDEM(ofd.FileName);
                    }

                    m_oAeccDoc.Regen(Autodesk.AutoCAD.Interop.Common.
AcRegenType
.acActiveViewport);


                }
               
else
                {

                }
            }
           
catch (System.Exception
e)
            {
               
MessageBox
.Show(e.Message);
            }
           
finally
            {

            }
        }
      
  


    }

}

作者: 峻祁连
邮箱:junqilian@163.com 
出处: http://junqilian.cnblogs.com 
转载请保留此信息。




本文转自峻祁连. Moving to Cloud/Mobile博客园博客,原文链接:http://www.cnblogs.com/junqilian/archive/2013/01/29/2881124.html ,如需转载请自行联系原作者
相关文章
|
3天前
|
供应链 监控 API
1688.item_search_shop API:开启电商数据新纪元
1688.item_search_shop API是阿里巴巴1688平台提供的核心接口之一,支持根据关键词搜索指定店铺的商品,并获取商品详情、图片、价格等信息。该API允许设定搜索结果排序方式,如按销量或价格排序,满足不同需求。开发者可将其集成到电商应用中,提升用户体验;市场分析人员可利用其进行趋势和竞争对手分析;供应链管理人员则能监控库存,优化策略。示例代码展示了如何使用Python调用该API,帮助开发者快速上手。这一API的推出标志着B2B电商领域商品搜索技术的重要进步,推动行业向更高效、智能的方向发展。
|
6天前
|
数据采集 数据可视化 前端开发
怎么通过API获取电竞赛事实时数据
选择合适的电竞数据API是开发电竞应用的关键。主流API包括OP.GG、Liquipedia、Stratz、Riot Games和熊猫比分,涵盖LOL、DOTA2等游戏的实时数据。注册并获取API密钥后,需仔细阅读文档,了解资源、请求方法、必需参数及响应格式。编写代码调用API时,注意优化请求频率,避免封禁。最后,通过Web界面或可视化工具展示数据,如React/D3.js、Tableau等。示例代码展示了如何使用熊猫比分API获取即将开始的比赛信息。
|
13天前
|
数据采集 监控 数据挖掘
常用电商商品数据API接口(item get)概述,数据分析以及上货
电商商品数据API接口(item get)是电商平台上用于提供商品详细信息的接口。这些接口允许开发者或系统以编程方式获取商品的详细信息,包括但不限于商品的标题、价格、库存、图片、销量、规格参数、用户评价等。这些信息对于电商业务来说至关重要,是商品数据分析、价格监控、上货策略制定等工作的基础。
|
1月前
|
API 网络安全
发送UDP数据免费API接口教程
此API用于向指定主机发送UDP数据,支持POST或GET请求。需提供用户ID、密钥、接收IP及端口、数据内容等参数。返回状态码和信息提示。示例中含公共ID与KEY,建议使用个人凭证以提高调用频率。
47 13
|
1月前
|
网络协议 API 网络安全
发送TCP数据免费API接口教程
此API用于向指定主机发送TCP数据,支持POST/GET请求,需提供用户ID、KEY、接收IP、端口及数据内容。返回状态码和信息提示,示例如下:{"code":200,"msg":"发送成功!"}。详情见:https://www.apihz.cn/api/datacstcp.html
40 11
|
1月前
|
人工智能 关系型数据库 MySQL
数据魔力,一触即发 —— Dataphin数据服务API,百炼插件新星降临!
本文通过一个利用百炼大模型平台和Dataphin数据服务API构建一个客户360智能应用的案例,介绍如何使用Dataphin数据服务API在百炼平台创建一个自定义插件,用于智能应用的开发,提升企业智能化应用水平。
139 3
数据魔力,一触即发 —— Dataphin数据服务API,百炼插件新星降临!
|
1月前
|
API 数据安全/隐私保护 开发者
实时获取小红书详情 API 数据
小红书详情API数据获取指南:注册开发者账号,创建应用并申请接口权限,构建请求获取笔记详情,使用Python等语言处理响应数据。需遵守使用规则,注意调用频率和数据安全。
|
1月前
|
XML 数据可视化 API
商品详情数据实战案例,API接口系列
淘宝商品详情数据在电商领域具有广泛的应用价值,而淘宝商品详情API接口则为开发者提供了获取这些数据的重要途径。通过合理利用这些接口和数据,可以提升业务效率、优化用户体验,为电商行业的发展注入新的活力。
|
1月前
|
SQL 缓存 API
在API接口数据获取过程中,如何确保数据的安全性和隐私性?
在API接口数据获取过程中,确保数据的安全性和隐私性至关重要。本文介绍了身份认证与授权、防止SQL注入和XSS攻击、加密传输、API版本控制、限流与熔断、压力测试与性能优化、备份与恢复以及法律和伦理考量等关键措施,帮助开发者和管理者有效保护API接口的数据安全和隐私性。
|
1月前
|
JSON API 数据安全/隐私保护
拍立淘按图搜索API接口返回数据的JSON格式示例
拍立淘按图搜索API接口允许用户通过上传图片来搜索相似的商品,该接口返回的通常是一个JSON格式的响应,其中包含了与上传图片相似的商品信息。以下是一个基于淘宝平台的拍立淘按图搜索API接口返回数据的JSON格式示例,同时提供对其关键字段的解释