找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1797|回复: 0

ObjectARX Technical Newsletter - August 2000

[复制链接]

已领礼包: 145个

财富等级: 日进斗金

发表于 2002-1-7 02:26:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
ObjectARX Technical Newsletter - August 2000  
This document is part of    ObjectARX Newsletter Archive     


ObjectARX Technical Newsletter - August 2000 Edition
====================================================
/Note: Have you missed a Newsletter issue? Visit our Newsletter archive at
the following URL:/

http://adn.autodesk.com/techsupp/techsupp/docs/newsletters.htm

Dear ObjectARX Developer,

0. Introduction.
1. ObjectARX for AutoCAD 2000i
2. Double Click API.
3. eTransmit API
4. Navigation File API
5. eLearning Course Material
  
0. Introduction
===============

AutoCAD 2000i has just been released, so it is time to present the new
API's which come with that release. Also you should be aware that
ARX/VBA/CL applications are binary compatible between AutoCAD 2000 and
2000i. However, application using one of the new API's will not be binary
compatible with AutoCAD 2000. This is because AutoCAD 2000 does not support
these new API's.

Please note that the samples discussed in the following articles at the
posting of this newsletter are not yet on the ADN web site. However the
samples will be posted very soon.
  

1. ObjectARX for AutoCAD 2000i
==============================

Please note:

From the 2000i release, the ObjectARX SDK is to be available by download
only, and is therefore not part of the July ADN shipment. Its posting to
the download area on http://www.autodesk.com/objectarx has also been
delayed, and so is currently unavailable. We are working on getting
the new SDK available for download from the web-site as soon as possible.
We apologise for the inconvenience this causes: ObjectARX for AutoCAD
2000 can build applications for AutoCAD 2000i, but contains none of the
new APIs described below.
  

2. Double Click API.
====================

There is a new ObjectARX API exposed in AutoCAD 2000i for handling
double-click events on entities.  The API is based on the new ARX
class AcDbDoubleClickEdit and will allow reactor handlers to receive
notification messages of double-click events on AutoCAD entities.

The default behavior in AutoCAD 2000i when an entity is
double-clicked is to invoke the appropriate entity-specific editor,
or (if there is no specific editor) the Object property Manager.
If multiple entities are selected, double-clicking an entity in
the selection will bring up the Object Property Manager.

It is possible to override the default behavior by trapping the
double-click notification for AcDbEntity-derived entities in
ObjectARX.  The notification order will ascend the inheritance
tree from the selected entity type up through AcDbEntity, so the
double-click notification can be handled anywhere in between.

The API is implemented through Protocol Extensions.  The client
would need to derive a class from AcDbDoubleClickEdit for each
entity type to be notified of a double-click event.

Example for a PLINE:

#include "AcDblClkEdit.h"
class AcDbDoubleClickEditPline : public AcDbDoubleClickEdit
{
public:

   ...
   void startEdit(AcDbEntity *pEnt,AcGePoint3d pt);
   void finishEdit(void);
};

The client would need to implement both startEdit() and finishEdit()
methods in order to receive notification messages.  Note that these
are the only two messages available.

When the client is loaded, the AcDbDoubleClickEdit class needs to add
the protocol extension to the appropriate database object.
For example within InitApplication():

pPlineEdit = new AcDbDoubleClickEditPline;
AcDbPline::desc()->addX(AcDbDoubleClickEdit::desc(),pPlineEdit);

Similarly, when the client is unloaded, it should delete the protocol
extension from the appropriate database object:

AcDbPline::desc()->delX(AcDbDoubleClickEdit::desc());

The client also needs to link with AcDblClkEditPE.lib, and should verify
that the AcDblClkEditPE.arx file is loaded: (Also within InitApplication):

acrxDynamicLinker->loadModule(/*MSG0*/"ACDBLCLKEDITPE.ARX",Adesk::kFalse);
  

The sample 'DblClickSamp' is a MSVC project that demonstrates the use of the
double-click API feature.  The sample works with 'PLINE', 'SPLINE' and
'CIRCLE' entities.  When a user double-clicks a PLINE or SPLINE, a vertex
or fit-point will be added to the object at the cursor location, which can
then be edited using grips.  When a CIRCLE is double-clicked, the color
index is changed. When any other entity is double-clicked, the appropriate
entity-specific editor is invoked, or (if none exists) Object Property Manager.

<<This sample will be posted to the ADN WEB only>>
  
  

3. eTransmit API.
=================

Remember Pack'n'Go? It used to be on the Express Tools menu of AutoCAD R14
and 2000. Well now it has moved to the File menu and is called eTransmit.
This utility still does what it always did - it assembles all the files
needed by a drawing and puts them in a common directory or on a web site.
But now it goes just that little bit further - you can ZIP the files, you
can add extra files to the transmittal, and you can send an email to the
intended recipient to tell them where the files are (the transmittal can
even be attached to the email).

You've probably already guessed that eTransmit has now got an API. Otherwise
we wouldn't be talking about it in the ObjectARX newsletter. The API is
exposed through a set of three COM interfaces:

  ITransmittalAddFileNotificationHandler - can be implemented or overridden to
  provide notification that an eTransmit operation is commencing.

  ITransmittalFile - represents a file that is part of the transmittal
  operation.
  
  ITransmittalOperation - provides information about the transmittal itself
  and provides methods for files to be added to the transmittal or text to be
  added to the transmittal report.

The ObjectARX 2000i Reference Guide provides you with all the information you
need to use this API, including some example code.
  

4. Navigation File API.
=======================

There is a new API acedGetFileNavDialog() for R2000i. The new global
function prompts the user for a file name with the new-style of the
AutoCAD file navigation dialog. It makes file browsing easy not only
for a local directory but also for an intranet/internet located file.
  
To provide additional feature that AutoCAD doesn't have, Whip ActiveX
control is used so it is possible to view a DWF file resulting from
acedGetFileNavDialog(). If you don't have Whip installed, you can
download it from www.autodesk.com.
  
<<A sample will be posted to the ADN WEB only>>
  
  

5. eLearning Course Material
============================

Interested in eLearning and ObjectARX? There are four eLearning ObjectARX
lessons available at the following URL with four more to be added soon:

http://www.headlight.com/browse_channels/0,1036,ad-679,00.html

-----------------------------------------------------------------------------
To subscribe or unsubscribe, go to
http://adn.autodesk.com/techsupp/techsupp/docs/newsletters.htm
-----------------------------------------------------------------------------

     You received this message as a result of your registration
     on the ADN List Server subscription page.  If you no longer wish
     to receive these messages, read the next section, How to use this
     mailing list.

     How to use this mailing list:

     You may unsubscribe from this e-mail newsletter, or subscribe to
     a variety of other informative e-mail newsletters, by returning
     to the ADN List Server subscription page at
       http://adn.autodesk.com/techsupp/techsupp/docs/newsletters.htm
     and changing your subscription preferences.

     Alternatively, from the subscribed account you can send an e-mail to
     <Majordomo-partnersys@autodesk.com> with the following command in the
     body of your email message:

     unsubscribe <list-name>

     ----------------------------------------------------------------------

     Autodesk Developer Network (ADN) information and events:

     For information on all ADN topics, please visit:
       http://www.autodesk.com/adn

     ----------------------------------------------------------------------

     THIS DOCUMENT IS PROVIDED FOR INFORMATIONAL PURPOSES ONLY.  The
     information contained in this document represents the current view of
     Autodesk Inc. on the issues discussed as of the date of publication.
     Because Autodesk must respond to change in market conditions, it
     should not be interpreted to be a commitment on the part of Autodesk
     and Autodesk cannot guarantee the accuracy of any information
     presented after the date of publication.
     INFORMATION PROVIDED IN THIS DOCUMENT IS PROVIDED 'AS IS' WITHOUT
     WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT
     LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
     PARTICULAR PURPOSE AND FREEDOM FROM INFRINGEMENT.
     The user assumes the entire risk as to the accuracy and the use of
     this document. This  document may be copied and distributed subject to
     the following conditions:
     1.   All text must be copied without modification and all pages must
          be included
     2.   All copies must contain Autodesk's copyright notice and any other
          notices provided therein
     3.   This document may not be distributed for profit

     ----------------------------------------------------------------------
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-22 01:04 , Processed in 0.290635 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表