MickD 发表于 2008-1-10 11:14:12

供公众下载的DRX SDK

[连结]
**** Hidden Message *****

MickD 发表于 2008-1-10 11:28:55

这是我第一次尝试
int MyLine()
{
//In the Bricscad SDS od_doc_man.h
OdApDocManager *pDocMan = odapDocManager();
OdApDocument* pDoc = pDocMan->curDocument();
// \/ \/ This is All ODA stuff\/ \/
//Note: this SDK like to use Smart Pointers
//Get the Database
OdDbDatabasePtr pDb = pDoc->database();

//
if ( pDb.isNull() )
    return (RSERR);
//make a couple of points
OdGePoint3d startPt(1.0, 1.0, 0.0);
OdGePoint3d endPt(10.0, 10.0, 0.0);
//Get the model space ID
OdDbObjectId spaceId = pDb->getModelSpaceId();
//Open the BTR safely :^)
OdDbBlockTableRecordPtr pBtr = spaceId.safeOpenObject(OdDb::kForWrite);
//Here we use the static method ::createObject() instead of instantiating the class.
//I think this will be the norm for creating objects
OdDbLinePtr pNewLine = OdDbLine::createObject();
//This sets the defaults such as layer ...
pNewLine->setDatabaseDefaults(pDb);
//Make a couple of points
pNewLine->setStartPoint( startPt );
pNewLine->setEndPoint( endPt );
//add the line
pBtr->appendOdDbEntity(pNewLine);
//In theory the smart pointers will clean up my mess
return (RSRSLT);
}

MickD 发表于 2008-1-10 16:19:06

谢谢丹尼尔,在另一个线程中忘记我的q,我会删除它。
第一印象/想法??

MickD 发表于 2008-1-10 17:23:59


嗨,米克,乍一看,这是一个哇!梦幻般的工作ODA!
这是一个巨大的API,所以它可能需要我一段时间来消化它。它似乎是由一个C++纯粹主义者写的,就像一切都使用智能指针,模板等一样。它似乎也是独立于平台的,因为文档建议将GUI/平台特定的东西分离到其他模块。它真的非常好的工作
我担心,似乎一些ITC成员已经脱离并开始构建自己的SDK(基于DRX SDK),而ITC正在做其他事情!?!因此,为一个应用程序编写的应用程序是否像SDS那样与所有人兼容还有待观察。时间会证明一切。
总而言之,这是将曾经被称为玩具CAD程序的一大步,使其成为一个非常强大的平台。正如你所说,价格是正确的。
克隆人战争我在未来看到我做

MickD 发表于 2008-1-10 21:33:30

好东西。
关于独立的sdk,实现者“应该”只是包装DRX api以适合他们自己,出于显而易见的原因,一些实现者尽可能地模仿arx。我不确定现在是否需要一个完美的副本,特别是如果从头开始编写新的应用程序,一个dwg文件就是你所需要的,所以主机不是那么重要。
我刚刚加载了它,它看起来做得非常好,CO的例子看起来非常简单。
现在,找时间做实验...

MickD 发表于 2008-1-10 21:48:27


Mick,您有VS2005吗?当你有时间玩的时候,喊一声,我会把我有的贴出来。
当然,如果其他人也想玩,我会贴出解决方案。

MickD 发表于 2008-1-11 04:53:22

是的,我有2005年......哦,不,它又发生了......必须...抵制......诱惑......闪亮的物体。看别处-看别处
丹尼尔,这是一个很好的逗趣者

MickD 发表于 2008-1-11 06:15:35

嘿,你去吧,试试这个
我把我的windows环境设置为
$(DRXINC)=DRX 2.04的路径,包括
$(DRXLIB)=DRX 2.04 VC*libs
$(BRISDS)=Bricscad SDS文件夹的路径

MickD 发表于 2008-1-11 06:44:34


秘诀在于有太多的工作要做,以至于你没有时间玩闪亮的物体。

MickD 发表于 2008-1-11 06:55:01


秘诀是有太多的工作要做,以至于你没有时间玩闪亮的物体。

是的,但是当有人戳你,说看我得到了什么的时候就很难了
页: [1] 2
查看完整版本: 供公众下载的DRX SDK