1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470 |
- //////////////////////////////////////////////////////////////////////////////
- //
- // Copyright 2015 Autodesk, Inc. All rights reserved.
- //
- // Use of this software is subject to the terms of the Autodesk license
- // agreement provided at the time of installation or download, or which
- // otherwise accompanies this software in either electronic or hard copy form.
- //
- //////////////////////////////////////////////////////////////////////////////
- #ifndef __DBMLEADER_H__
- #define __DBMLEADER_H__
- #pragma once
- #include "dbgrip.h"
- #include "dbmleaderstyle.h"
- #include "dbents.h"
- const int MAX_LEADER_NUMBER = 5000;
- const int MAX_LEADERLINE_NUMBER = 5000;
- class AcDbMLeaderObjectContextData;
- ////////////////////////////////////////////////////////////////////////
- // class AcDbMLeader
- ////////////////////////////////////////////////////////////////////////
- /// <summary>
- /// This class is the main class used for the multiple leader object.
- /// </summary>
- ///
- /// <remarks>
- /// </remarks>
- ///
- class AcDbMLeader : public AcDbEntity
- {
- public:
- /// <summary>
- /// This enum is the move type use for move mleader object.
- /// </summary>
- ///
- enum MoveType {
- /// <summary>
- /// move all mleader points
- /// </summary>
- ///
- /// <value>
- /// 0
- /// </value>
- kMoveAllPoints = 0,
- /// <summary>
- /// move all mleader points except leaderline's arrowhead points
- /// </summary>
- ///
- /// <value>
- /// 1
- /// </value>
- kMoveAllExceptArrowHeaderPoints = 1,
- /// <summary>
- /// move dogleg and mleader content points
- /// </summary>
- ///
- /// <value>
- /// 2
- /// </value>
- kMoveContentAndDoglegPoints = 2
- };
- /// <summary>
- /// This enum is the gs mark of mleader object.
- /// </summary>
- ///
- enum gsMarkType {
- /// <summary>
- /// Null gs mark.
- /// </summary>
- ///
- /// <value>
- /// 0
- /// </value>
- kNone = 0,
- /// <summary>
- /// arrow symbol gs mark.
- /// </summary>
- ///
- /// <value>
- /// from 1 to MAX_LEADERLINE_NUMBER
- /// </value>
- kArrowMark = 1,
- /// <summary>
- /// leaderLine gs mark.
- /// </summary>
- ///
- /// <value>
- /// from kArrowMark + MAX_LEADERLINE_NUMBER to MAX_LEADERLINE_NUMBER
- /// </value>
- kLeaderLineMark = kArrowMark + MAX_LEADERLINE_NUMBER,
- /// <summary>
- /// dogleg gs mark.
- /// </summary>
- ///
- /// <value>
- /// from kLeaderLineMark + MAX_LEADERLINE_NUMBE to MAX_LEADER_NUMBER
- /// </value>
- kDoglegMark = kLeaderLineMark + MAX_LEADERLINE_NUMBER,
- /// <summary>
- /// mtext content gs mark.
- /// </summary>
- ///
- /// <value>
- /// kDoglegMark + MAX_LEADER_NUMBER
- /// </value>
- kMTextMark = kDoglegMark + MAX_LEADER_NUMBER,
- /// <summary>
- /// mtext underline content gs mark, include text frame if mleader has.
- /// </summary>
- ///
- /// <value>
- /// kMTextMark + 1
- /// </value>
- kMTextUnderLineMark = kMTextMark + 1,
- /// <summary>
- /// Tolerance content gs mark
- /// </summary>
- ///
- /// <value>
- /// kMTextUnderLineMark + 1
- /// </value>
- kToleranceMark = kMTextUnderLineMark + 1,
- /// <summary>
- /// Block content gs mark
- /// </summary>
- ///
- /// <value>
- /// kToleranceMark + 1
- /// </value>
- kBlockMark = kToleranceMark + 1,
- /// <summary>
- /// BlockAttribute content gs mark
- /// </summary>
- ///
- /// <value>
- /// from kBlockMark + 1 to 2^(8*sizeof(unsigned short))
- /// </value>
- kBlockAttribute = kBlockMark + 1
- };
- /// <summary>
- /// This enum is the properties could be overrided in mleader object.
- /// </summary>
- ///
- enum PropertyOverrideType {
- /// <summary>
- /// type of leaderLine
- /// </summary>
- ///
- /// <value>
- /// 0
- /// </value>
- kLeaderLineType = 0,
- /// <summary>
- /// color of leaderLine
- /// </summary>
- ///
- /// <value>
- /// 1
- /// </value>
- kLeaderLineColor = 1,
- /// <summary>
- /// line type id of leaderLine
- /// </summary>
- ///
- /// <value>
- /// 2
- /// </value>
- kLeaderLineTypeId = 2,
- /// <summary>
- /// line weight id of leaderLine
- /// </summary>
- ///
- /// <value>
- /// 3
- /// </value>
- kLeaderLineWeight = 3,
- /// <summary>
- /// if enable landing
- /// </summary>
- ///
- /// <value>
- /// 4
- /// </value>
- kEnableLanding = 4,
- /// <summary>
- /// landing gap
- /// </summary>
- ///
- /// <value>
- /// 5
- /// </value>
- kLandingGap = 5,
- /// <summary>
- /// if enable dogleg
- /// </summary>
- ///
- /// <value>
- /// 6
- /// </value>
- kEnableDogleg = 6,
- /// <summary>
- /// dogleg length
- /// </summary>
- ///
- /// <value>
- /// 7
- /// </value>
- kDoglegLength = 7,
- /// <summary>
- /// block id of arrowSymbol
- /// </summary>
- ///
- /// <value>
- /// 8
- /// </value>
- kArrowSymbolId = 8,
- /// <summary>
- /// size of arrowSymbol
- /// </summary>
- ///
- /// <value>
- /// 9
- /// </value>
- kArrowSize = 9,
- /// <summary>
- /// content type of mleader
- /// </summary>
- ///
- /// <value>
- /// 10
- /// </value>
- kContentType = 10,
- /// <summary>
- /// text style id of mtext content
- /// </summary>
- ///
- /// <value>
- /// 11
- /// </value>
- kTextStyleId = 11,
- /// <summary>
- /// text left attachment type of mtext content
- /// </summary>
- ///
- /// <value>
- /// 12
- /// </value>
- kTextLeftAttachmentType = 12,
- /// <summary>
- /// text angle type of mtext content
- /// </summary>
- ///
- /// <value>
- /// 13
- /// </value>
- kTextAngleType = 13,
- /// <summary>
- /// text alignment type of mtext content
- /// </summary>
- ///
- /// <value>
- /// 14
- /// </value>
- kTextAlignmentType = 14,
- /// <summary>
- /// text color of mtext content
- /// </summary>
- ///
- /// <value>
- /// 15
- /// </value>
- kTextColor = 15,
- /// <summary>
- /// text height of mtext content
- /// </summary>
- ///
- /// <value>
- /// 16
- /// </value>
- kTextHeight = 16,
- /// <summary>
- /// if enable frame text
- /// </summary>
- ///
- /// <value>
- /// 17
- /// </value>
- kEnableFrameText = 17,
- /// <summary>
- /// if use default mtext defined in mleaderStyle
- /// </summary>
- ///
- /// <value>
- /// 18
- /// </value>
- kDefaultMText = 18,
- /// <summary>
- /// block table record id of block content
- /// </summary>
- ///
- /// <value>
- /// 19
- /// </value>
- kBlockId = 19,
- /// <summary>
- /// color of block content
- /// </summary>
- ///
- /// <value>
- /// 20
- /// </value>
- kBlockColor = 20,
- /// <summary>
- /// scale of block content
- /// </summary>
- ///
- /// <value>
- /// 21
- /// </value>
- kBlockScale = 21,
- /// <summary>
- /// rotation of block content
- /// </summary>
- ///
- /// <value>
- /// 22
- /// </value>
- kBlockRotation = 22,
- /// <summary>
- /// connection type of block content
- /// </summary>
- ///
- /// <value>
- /// 23
- /// </value>
- kBlockConnectionType = 23,
- /// <summary>
- /// scale of mleader
- /// </summary>
- ///
- /// <value>
- /// 24
- /// </value>
- kScale = 24,
- /// <summary>
- /// text right attachment type of mtext content
- /// </summary>
- ///
- /// <value>
- /// 25
- /// </value>
- kTextRightAttachmentType = 25,
- /// <summary>
- /// text switch alignment type of mtext content
- /// if set this override, drag grip point of mleader will not changed text alignment type
- /// </summary>
- ///
- /// <value>
- /// 26
- /// </value>
- kTextSwitchAlignmentType = 26,
- /// <summary>
- /// text attachment direction of mtext content
- /// </summary>
- ///
- /// <value>
- /// 27
- /// </value>
- kTextAttachmentDirection = 27,
- /// <summary>
- /// text top attachment type of mtext content
- /// </summary>
- ///
- /// <value>
- /// 28
- /// </value>
- kTextTopAttachmentType = 28,
- /// <summary>
- /// text bottom attachment type of mtext content
- /// </summary>
- ///
- /// <value>
- /// 29
- /// </value>
- kTextBottomAttachmentType = 29,
- /// <summary>
- /// automatically extend the horizontal leader line to text
- /// </summary>
- ///
- /// <value>
- /// 30
- /// </value>
- kExtendLeaderToText = 30,
- //add more here...
- /// <summary>
- /// bitset size
- /// </summary>
- ///
- /// <value>
- /// 31
- /// </value>
- kSize = kExtendLeaderToText + 1
- };
- /// <summary>
- /// Default constructor.
- /// </summary>
- ///
- /// <remarks>
- /// Default constructor.
- /// </remarks>
- ///
- AcDbMLeader();
- /// <summary>
- /// Default destructor.
- /// </summary>
- ///
- /// <remarks>
- /// Default destructor.
- /// </remarks>
- ///
- ~AcDbMLeader();
- ACDB_DECLARE_MEMBERS(AcDbMLeader);
- /// <summary>
- /// Used to read in an AcDbMLeader's data from a DWG file.
- /// </summary>
- ///
- /// <param name="filer">
- /// Actual filer used to read in an AcDbMLeader's data from a DWG file.
- /// </param>
- ///
- /// <remarks>
- /// Used to read in an AcDbMLeader's data from a DWG file.
- /// </remarks>
- ///
- virtual Acad::ErrorStatus dwgInFields (AcDbDwgFiler* filer);
- /// <summary>
- /// Used to persist the AcDbMLeader's data to a DWG file.
- /// </summary>
- ///
- /// <param name="filer">
- /// Actual filer used to persist the AcDbMLeader's data to a DWG file.
- /// </param>
- ///
- /// <remarks>
- /// Used to persist the AcDbMLeader's data to a DWG file.
- /// </remarks>
- ///
- virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler* filer) const;
- /// <summary>
- /// Used to read in an AcDbMLeader's data from a DXF file.
- /// </summary>
- ///
- /// <param name="filer">
- /// Actual filer used to read in an AcDbMLeader's data from a DXF file.
- /// </param>
- ///
- /// <remarks>
- /// Used to read in an AcDbMLeader's data from a DXF file.
- /// </remarks>
- ///
- virtual Acad::ErrorStatus dxfInFields (AcDbDxfFiler* filer);
- /// <summary>
- /// Used to persist the AcDbMLeader's data to a DXF file.
- /// </summary>
- ///
- /// <param name="filer">
- /// Actual filer used to persist the AcDbMLeader's data to a DXF file.
- /// </param>
- ///
- /// <remarks>
- /// Used to persist the AcDbMLeader's data to a DXF file.
- /// </remarks>
- ///
- virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler* filer) const;
- /// <summary>
- /// Called from within close() before anything else is done.
- /// </summary>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- virtual Acad::ErrorStatus subClose ();
- /// <summary>
- /// Called from within erase() before anything else is done.
- /// </summary>
- ///
- /// <param name="erasing">
- /// Passed in copy of the erasing argument that was passed into the erase() function call
- /// that triggered this subErase() call.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- virtual Acad::ErrorStatus subErase (Adesk::Boolean erasing);
- /// <summary>
- /// Called whenever the object sending notification was closed.
- /// </summary>
- ///
- /// <param name="dbObjId">
- /// Passed in objectId of the object sending the notification.
- /// </param>
- ///
- virtual void objectClosed (const AcDbObjectId dbObjId);
- /// <summary>
- /// Called whenever the object sending notification has been modified and the object is being closed.
- /// </summary>
- ///
- /// <param name="dbObj">
- /// Passed in pointer to object which has been modified.
- /// </param>
- ///
- virtual void modified (const AcDbObject* dbObj);
- /// <summary>
- /// Sets input propertyType is override or not.
- /// </summary>
- ///
- /// <param name="propertyType">
- /// Input PropertyOverrideType which will be set.
- /// </param>
- /// <param name="isOverride">
- /// Input bool indicate whether overrided or not.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setOverride (PropertyOverrideType propertyType,
- bool isOverride = true);
- /// <summary>
- /// Test if the propertyType has been overrided.
- /// </summary>
- ///
- /// <param name="propertyType">
- /// Input PropertyOverrideType to test if it is overrided.
- /// </param>
- ///
- /// <returns>
- /// Returns true if the input PropertyOverrideType is override by this mleader object.
- /// Otherwise, return false.
- /// </returns>
- ///
- bool isOverride (PropertyOverrideType propertyType) const;
- /// <summary>
- /// Sets mleader scale, it will affect arrowhead size and content scale.
- /// </summary>
- ///
- /// <param name="scale">
- /// Input scale value.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kScale override.
- /// </remarks>
- ///
- Acad::ErrorStatus setScale (double scale);
- /// <summary>
- /// Gets mleader scale value.
- /// </summary>
- ///
- /// <returns>
- /// Returns mleader scale value.
- /// </returns>
- ///
- double scale () const;
- /// <summary>
- /// Gets attribute in block content determined by attribute definition id.
- /// </summary>
- ///
- /// <param name="attdefId">
- /// Input attribute definition id.
- /// </param>
- /// <param name="pAtt">
- /// OutPut attribute object determined by attribute definition id.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// Attribute define id is the AcDbAttributeDefinition object id
- /// that is defined in AcDbBlockTableRecord refernced by this mleader object.
- /// The attribute object should be deleted when it is no longer needed.
- /// </remarks>
- ///
- Acad::ErrorStatus getBlockAttributeValue(const AcDbObjectId& attdefId,
- AcDbAttribute*& pAtt) const;
- /// <summary>
- /// Set attribute in block content with attribute definition id.
- /// </summary>
- ///
- /// <param name="attdefId">
- /// Input attribute definition id.
- /// </param>
- /// <param name="pAtt">
- /// Iutputs attribute.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setBlockAttributeValue(const AcDbObjectId& attdefId,
- const AcDbAttribute* pAtt);
- /// <remarks>
- /// Deprecated: This method will be removed in a future release.
- /// Instead, use the method:
- /// <code>
- /// Acad::ErrorStatus getBlockAttributeValue(const AcDbObjectId& attdefId, AcDbAttribute*& pAtt) const;
- /// </code>
- /// </remarks>
- Acad::ErrorStatus getBlockAttributeValue (const AcDbObjectId& attdefId,
- ACHAR*& value) const;
- /// <remarks>
- /// Deprecated: This method will be removed in a future release.
- /// Instead, use the method:
- /// <code>
- /// Acad::ErrorStatus setBlockAttributeValue(const AcDbObjectId& attdefId, AcDbAttribute*& pAtt) const;
- /// </code>
- /// </remarks>
- Acad::ErrorStatus setBlockAttributeValue (const AcDbObjectId& attdefId,
- const ACHAR* value);
- /// <summary>
- /// Gets the WCS plane which the MLeader resides on.
- /// </summary>
- ///
- /// <returns>
- /// Returns the WCS plane which the MLeader resides on.
- /// </returns>
- ///
- AcGePlane plane () const;
- /// <summary>
- /// Sets the WCS plane which the MLeader resides on.
- /// </summary>
- ///
- /// <param name="plane">
- /// Input desired plane within which the mleader will reside.
- /// </param>
- ///
- /// <remarks>
- /// Sets the plane that will contain the mleader object.
- /// This leader's data members will be updated to reflect the change of plane.
- /// To do this, a transformation matrix will be created that will translate all points
- /// from the current plane's coordinate system to the new plane's coordinate
- /// system--a projection is not used.
- /// If doesn't set plane, mleader use default AcGePlane::kXYPlane
- /// </remarks>
- ///
- void setPlane (const AcGePlane& plane);
- /// <summary>
- /// Gets the normal of the plane which the MLeader resides on.
- /// </summary>
- ///
- /// <returns>
- /// Returns the unit normal vector (in WCS coordinates) of the plane that contains the leader.
- /// </returns>
- ///
- AcGeVector3d normal () const;
- /// <summary>
- /// Moves mleader according to input vector.
- /// </summary>
- ///
- /// <param name="vector">
- /// Input vector indicate direction and distance the mleader will be moved.
- /// </param>
- /// <param name="moveType">
- /// Input MoveType indicate how the mleader will be moved. This enumeration define in MoveType.
- /// </param>
- /// <param name="bAutoSwitchDogleg">
- /// Input bool to indicate whether automatically switch leader lines after mleader is moved.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus moveMLeader (const AcGeVector3d& vector,
- MoveType moveType,
- bool bAutoSwitchDogleg = true);
- /// <summary>
- /// Gets the extents of content in this mleader object.
- /// </summary>
- ///
- /// <param name="extents">
- /// Output content's extents.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getContentGeomExtents(AcDbExtents& extents) const;
- /// <remarks>
- /// Deprecated: This method will be removed in a future release.
- /// Instead, use the method:
- /// <code>
- /// Acad::ErrorStatus getLeaderIndexes(...) const;
- /// </code>
- /// </remarks>
- int numLeaders () const;
- /// <summary>
- /// Gets the indexes of leaders.
- /// </summary>
- ///
- /// <param name="leaderIndexes">
- /// Output indexes of leaders.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getLeaderIndexes(AcArray<int>& leaderIndexes) const;
- /// <summary>
- /// Adds a new leader cluster to this AcDbMLeader object.
- /// </summary>
- ///
- /// <param name="leaderIndex">
- /// Output the index of added leader cluster.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// A leader cluster is made up by a dog-leg and some leaderLines.
- /// </remarks>
- ///
- Acad::ErrorStatus addLeader (int& leaderIndex);
- /// <summary>
- /// Removes the leader cluster with specified index.
- /// </summary>
- ///
- /// <param name="leaderIndex">
- /// Input the index of the leader to be removed.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// A leader cluster is made up by a dog-leg and some leaderLines.
- /// </remarks>
- ///
- Acad::ErrorStatus removeLeader (int leaderIndex);
- /// <remarks>
- /// Deprecated: This method will be removed in a future release.
- /// Instead, use the method:
- /// <code>
- /// Acad::ErrorStatus getLeaderLineIndexes(...) const;
- /// </code>
- /// </remarks>
- int numLeaderLines () const;
- /// <summary>
- /// Gets the indexes of leaderLines.
- /// </summary>
- ///
- /// <param name="leaderIndexes">
- /// Output indexes of leadersLines.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getLeaderLineIndexes(AcArray<int>& leaderLineIndexes) const;
- /// <summary>
- /// Adds a leaderline to the leader cluster with specified index.
- /// </summary>
- ///
- /// <param name="leaderIndex">
- /// Input index of the leader cluster.
- /// </param>
- /// <param name="leaderLineIndex">
- /// Output the index of the added leader line.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// A leaderLine cluster is made up by leaderline segment and arrowhead.
- /// </remarks>
- ///
- Acad::ErrorStatus addLeaderLine (int leaderIndex, int& leaderLineIndex);
- /// <summary>
- /// Adds a new leader line to this mleader object determined by input point
- /// which will be the first point of new leaderline.
- /// </summary>
- ///
- /// <param name="point">
- /// Input point of the first(head) vertex of the new leader line.
- /// </param>
- /// <param name="leaderLineIndex">
- /// Output the index of added leader line.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// A leaderLine cluster is made up by leaderline segment and arrowhead.
- /// This function can be invoked when the mleader already have a content.
- /// If the input point is on the side of exist leader cluster,
- /// a new leaderline will be added, the new leaderline's last point have already exist,
- /// the input point will be the first point of the new leaderline.
- /// If no leader cluster exists on the input point side,
- /// a new leader will be added automatically, then add a new leaderline.
- /// </remarks>
- ///
- Acad::ErrorStatus addLeaderLine (const AcGePoint3d& point, int& leaderLineIndex);
- /// <summary>
- /// Removes the leader line with specified index.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input the index of leaderLine cluster.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// A leaderLine cluster is made up by leaderline segment and arrowhead.
- /// If after remove lieaderine, the leader has no leaderline, the leader will be removed too.
- /// </remarks>
- ///
- Acad::ErrorStatus removeLeaderLine (int leaderLineIndex);
- /// <summary>
- /// Inserts a vertex to the leader line with specified index as new leader head.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input index of the leader line.
- /// </param>
- /// <param name="point">
- /// Input the vertex position.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus addFirstVertex (int leaderLineIndex, const AcGePoint3d& point);
- /// <summary>
- /// Removes the head of the leader line with specified index.
- /// The second vertex in this leader line becomes the new head.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input index of the leader line.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus removeFirstVertex (int leaderLineIndex);
- /// <summary>
- /// Gets head point of specified leader line.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input index of the leader line.
- /// </param>
- /// <param name="point">
- /// Output the leaderline head point.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getFirstVertex (int leaderLineIndex, AcGePoint3d& point) const;
- /// <summary>
- /// Sets the leader head with specified point.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input index of the leader line.
- /// </param>
- /// <param name="point">
- /// Iutput the leaderline head point.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setFirstVertex (int leaderLineIndex, const AcGePoint3d& point);
- /// <summary>
- /// Appends a vertex to the specified leader line as the new leader tail.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input index of the leader line.
- /// </param>
- /// <param name="point">
- /// Input the vertex position.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus addLastVertex (int leaderLineIndex, const AcGePoint3d& point);
- /// <summary>
- /// Removes the leader tail of specified leader line.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input index of the leader line.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus removeLastVertex (int leaderLineIndex);
- /// <summary>
- /// Gets the tail vertex position of specified leader line.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input index of the leader line.
- /// </param>
- /// <param name="point">
- /// Output the leaderline tail point.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getLastVertex (int leaderLineIndex, AcGePoint3d& point) const;
- /// <summary>
- /// Sets leader tail with specified point.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input index of the leader line.
- /// </param>
- /// <param name="point">
- /// Iutput the leaderline tail point.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setLastVertex (int leaderLineIndex, const AcGePoint3d& point);
- /// <summary>
- /// Gets the number of vertices in the specified leader line.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input index of the leader line.
- /// </param>
- /// <param name="num">
- /// Ouput the number of vertices in the leader line.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus numVertices (int leaderLineIndex, int& num) const;
- /// <summary>
- /// Sets the vertex with specified index in the leader line with a new position specified by point.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input index of the leader line.
- /// </param>
- /// <param name="index">
- /// Input the index of vertex.
- /// </param>
- /// <param name="point">
- /// Input the new position of this vertex.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setVertex (int leaderLineIndex, int index, const AcGePoint3d& point);
- /// <summary>
- /// Gets position of the vertex with specified index in the leader line
- /// with a new position specified by point.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input index of the leader line.
- /// </param>
- /// <param name="index">
- /// Input the index of vertex.
- /// </param>
- /// <param name="point">
- /// Ouput position of the vertex.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getVertex (int leaderLineIndex, int index, AcGePoint3d& point) const;
- /// <summary>
- /// Gets the index of leader cluster which the specified leader line is in.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input index of the leader line.
- /// </param>
- /// <param name="leaderIndex">
- /// Output index of leader owned the input leaderline.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getLeaderIndex (int leaderLineIndex, int& leaderIndex) const;
- /// <summary>
- /// Gets the indexes of leaderlines of the specific leader.
- /// </summary>
- ///
- /// <param name="leaderIndex">
- /// Input leader index.
- /// </param>
- /// <param name="leaderLineIndexes">
- /// Output indexes of leaderlines owned by the input leader.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getLeaderLineIndexes(int leaderIndex, AcArray<int>& leaderLineIndexes) const;
- /// <summary>
- /// Sets the dog-leg in the leader cluster specified by leaderIndex with vector.
- /// </summary>
- ///
- /// <param name="leaderIndex">
- /// Input leader index.
- /// </param>
- /// <param name="vector">
- /// Input the vector represents the new length and new direction of dog-leg.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setDoglegDirection (int leaderIndex, const AcGeVector3d& vector);
- /// <summary>
- /// Gets the vector represents the length and direction of the dog-leg in specified leader cluster.
- /// </summary>
- ///
- /// <param name="leaderIndex">
- /// Input leader index.
- /// </param>
- /// <param name="vector">
- /// Ouput the vector represents the length and direction of the dog-leg in specified leader cluster.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getDoglegDirection (int leaderIndex, AcGeVector3d& vector) const;
- /// <summary>
- /// Sets the leader type to this mleader object.
- /// </summary>
- ///
- /// <param name="leaderLineType">
- /// Input the leader type. leaderLineType is defined in AcDbMLeaderStyle::LeaderType
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kLeaderLineType override.
- /// </remarks>
- ///
- Acad::ErrorStatus setLeaderLineType (AcDbMLeaderStyle::LeaderType leaderLineType);
- /// <summary>
- /// Gets the leader line type of this mleader object.
- /// </summary>
- ///
- /// <returns>
- /// Returns the leader line type of this mleader object.
- /// </returns>
- ///
- AcDbMLeaderStyle::LeaderType leaderLineType () const;
- /// <summary>
- /// Sets the leader line type for the specific leaderline.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input the index of the specific leaderline.
- /// </param>
- /// <param name="arrowSymbolId">
- /// Input the leader line type.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setLeaderLineType(int leaderLineIndex,
- AcDbMLeaderStyle::LeaderType leaderLineType);
- /// <summary>
- /// Gets the leader line type for the specific leaderline.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input the index of the specific leaderline.
- /// </param>
- /// <param name="arrowSymbolId">
- /// Gets the leader line type of the specific leaderline.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getLeaderLineType(int leaderLineIndex,
- AcDbMLeaderStyle::LeaderType& leaderLineType) const;
- /// <summary>
- /// Sets the color of leader lines.
- /// </summary>
- ///
- /// <param name="leaderLineColor">
- /// Input the color of leader lines.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kLeaderLineColor override.
- /// </remarks>
- ///
- Acad::ErrorStatus setLeaderLineColor (const AcCmColor& leaderLineColor);
- /// <summary>
- /// Gets the color of leader lines.
- /// </summary>
- ///
- /// <returns>
- /// Returns the color of leader lines.
- /// </returns>
- ///
- AcCmColor leaderLineColor () const;
- /// <summary>
- /// Sets the color of leader lines for the specific leaderline.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input the index of the specific leaderline.
- /// </param>
- /// <param name="arrowSymbolId">
- /// Input the color of leader lines.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setLeaderLineColor(int leaderLineIndex,
- const AcCmColor& leaderLineColor);
- /// <summary>
- /// Gets the color of leader lines for the specific leaderline.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input the index of the specific leaderline.
- /// </param>
- /// <param name="arrowSymbolId">
- /// Gets the color of leader lines of the specific leaderline.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getLeaderLineColor(int leaderLineIndex,
- AcCmColor& leaderLineColor) const;
- /// <summary>
- /// Sets the objectId of leader line type.
- /// </summary>
- ///
- /// <param name="leaderLineTypeId">
- /// Input the objectId of leader line type.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kLeaderLineTypeId override.
- /// </remarks>
- ///
- Acad::ErrorStatus setLeaderLineTypeId (AcDbObjectId leaderLineTypeId);
- /// <summary>
- /// Gets the objectId of leader line type.
- /// </summary>
- ///
- /// <returns>
- /// Returns the objectId of leader line type.
- /// </returns>
- ///
- AcDbObjectId leaderLineTypeId () const;
- /// <summary>
- /// Sets the objectId of leader line type for the specific leaderline.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input the index of the specific leaderline.
- /// </param>
- /// <param name="arrowSymbolId">
- /// Input the objectId of leader line type.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setLeaderLineTypeId(int leaderLineIndex,
- AcDbObjectId leaderLineTypeId);
- /// <summary>
- /// Gets the objectId of leader line type for the specific leaderline.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input the index of the specific leaderline.
- /// </param>
- /// <param name="arrowSymbolId">
- /// Gets the objectId of leader line type of the specific leaderline.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getLeaderLineTypeId(int leaderLineIndex,
- AcDbObjectId& leaderLineTypeId) const;
- /// <summary>
- /// Sets the line weight of leader lines.
- /// </summary>
- ///
- /// <param name="leaderLineWeight">
- /// Input the line weight of leader lines.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kLeaderLineWeight override.
- /// </remarks>
- ///
- Acad::ErrorStatus setLeaderLineWeight (AcDb::LineWeight leaderLineWeight);
- /// <summary>
- /// Gets the line weight of leader lines.
- /// </summary>
- ///
- /// <returns>
- /// Returns the line weight of leader lines.
- /// </returns>
- ///
- AcDb::LineWeight leaderLineWeight () const;
- /// <summary>
- /// Sets the line weight for the specific leaderline.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input the index of the specific leaderline.
- /// </param>
- /// <param name="arrowSymbolId">
- /// Input the line weight.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setLeaderLineWeight(int leaderLineIndex,
- AcDb::LineWeight leaderLineWeight);
- /// <summary>
- /// Gets the line weight for the specific leaderline.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input the index of the specific leaderline.
- /// </param>
- /// <param name="arrowSymbolId">
- /// Gets the line weight of the specific leaderline.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getLeaderLineWeight(int leaderLineIndex,
- AcDb::LineWeight& leaderLineWeight) const;
- /// <summary>
- /// Sets the gap between leader tail and MText.
- /// </summary>
- ///
- /// <param name="landingGap">
- /// Input the gap between leader tail and MText.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kLandingGap override.
- /// </remarks>
- ///
- Acad::ErrorStatus setLandingGap (double landingGap);
- /// <summary>
- /// Gets the gap between leader tail and MText.
- /// </summary>
- ///
- /// <returns>
- /// Returns the gap between leader tail and MText.
- /// </returns>
- ///
- double landingGap () const;
- /// <summary>
- /// Used to enable/disable landing of leader line.
- /// </summary>
- ///
- /// <param name="enableLanding">
- /// Input boolean to enable/disable landing of leader line.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kEnableLanding override.
- /// If disable landing, the landing gap will be ignored.
- /// </remarks>
- ///
- Acad::ErrorStatus setEnableLanding (bool enableLanding);
- /// <summary>
- /// Indicates whether landing of leader line is enabled.
- /// </summary>
- ///
- /// <returns>
- /// If landing of leader line is enabled, returns true; otherwise, returns false.
- /// </returns>
- ///
- bool enableLanding () const;
- /// <summary>
- /// Used to enable/disable dog-leg leader line.
- /// </summary>
- ///
- /// <param name="enableDogleg">
- /// Input boolean to enable/disable dog-leg leader line.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kEnableDogleg override.
- /// </remarks>
- ///
- Acad::ErrorStatus setEnableDogleg (bool enableDogleg);
- /// <summary>
- /// Indicates whether dog-leg leader line is enabled.
- /// </summary>
- ///
- /// <returns>
- /// If dog-leg leader line is enabled, returns true; otherwise, returns false.
- /// </returns>
- ///
- bool enableDogleg () const;
- /// <summary>
- /// Set the length of doglegs in the leader cluster specified by leaderIndex.
- /// </summary>
- ///
- /// <param name="leaderIndex">
- /// Input leader index.
- /// </param>
- /// <param name="doglegLength">
- /// Input the length of doglegs.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kDoglegLength override.
- /// </remarks>
- ///
- Acad::ErrorStatus setDoglegLength (int leaderIndex, double doglegLength);
- /// <summary>
- /// Gets the length of doglegs in the leader cluster specified by leaderIndex.
- /// </summary>
- ///
- /// <param name="leaderIndex">
- /// Input leader index.
- /// </param>
- /// <param name="doglegLength">
- /// Output leader index.
- /// </param>
- ///
- /// <returns>
- /// Returns the length of doglegs.
- /// </returns>
- ///
- Acad::ErrorStatus doglegLength (int leaderIndex, double& doglegLength) const;
- /// <remarks>
- /// Deprecated: This method will be removed in a future release.
- /// Instead, use the method:
- /// <code>
- /// Acad::ErrorStatus setDoglegLength(int leaderIndex, double doglegLength);
- /// </code>
- /// </remarks>
- Acad::ErrorStatus setDoglegLength (double doglegLength);
- /// <remarks>
- /// Deprecated: This method will be removed in a future release.
- /// Instead, use the method:
- /// <code>
- /// Acad::ErrorStatus doglegLength(int leaderIndex, double& doglegLength) const;
- /// </code>
- /// </remarks>
- double doglegLength () const;
- /// <summary>
- /// Sets default arrow symbol id.
- /// </summary>
- ///
- /// <param name="arrowSymbolId">
- /// Input the objectId of arrow symbol.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kArrowSymbolId override.
- /// If doesn't set arrow symbol id for specific leaderline,
- /// the leaderline will use this default arrowSymbolId.
- /// </remarks>
- ///
- Acad::ErrorStatus setArrowSymbolId (AcDbObjectId arrowSymbolId);
- /// <summary>
- /// Gets the default arrow symbol id
- /// </summary>
- ///
- /// <returns>
- /// Returns the default arrow symbol id
- /// </returns>
- ///
- AcDbObjectId arrowSymbolId () const;
- /// <summary>
- /// Sets the arrow head symbol id for the specific leaderline.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input the index of the specific leaderline.
- /// </param>
- /// <param name="arrowSymbolId">
- /// Input the object id of the arrow head symbol.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setArrowSymbolId(int leaderLineIndex,
- AcDbObjectId arrowSymbolId);
- /// <summary>
- /// Gets the arrow head symbol id for the specific leaderline.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input the index of the specific leaderline.
- /// </param>
- /// <param name="arrowSymbolId">
- /// Gets the object id of the arrow head symbol of the specific leaderline.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getArrowSymbolId(int leaderLineIndex,
- AcDbObjectId& arrowSymbolId) const;
- /// <remarks>
- /// Deprecated: This method will be removed in a future release.
- /// Instead, use the method:
- /// <code>
- /// Acad::ErrorStatus getArrowSymbolId(int leaderLineIndex; AcDbObjectId& arrowSymbolId) const;
- /// </code>
- /// </remarks>
- AcDbObjectId arrowSymbolId(int leaderLineIndex) const;
- /// <summary>
- /// Sets arrow size of this mleader object.
- /// </summary>
- ///
- /// <param name="arrowSize">
- /// Input size of arrow.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kArrowSize override.
- /// </remarks>
- ///
- Acad::ErrorStatus setArrowSize (double arrowSize);
- /// <summary>
- /// Gets the arrow size of this mleader object.
- /// </summary>
- ///
- /// <returns>
- /// Returns the arrow size of this mleader object.
- /// </returns>
- ///
- double arrowSize () const;
- /// <summary>
- /// Sets the arrow size for the specific leaderline.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input the index of the specific leaderline.
- /// </param>
- /// <param name="arrowSymbolId">
- /// Input the arrow size.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setArrowSize(int leaderLineIndex, double arrowSize);
- /// <summary>
- /// Gets the arrow size for the specific leaderline.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input the index of the specific leaderline.
- /// </param>
- /// <param name="arrowSymbolId">
- /// Gets the arrow size of the specific leaderline.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getArrowSize(int leaderLineIndex, double& arrowSize) const;
- /// <summary>
- /// Sets the content type of this mleader object.
- /// </summary>
- ///
- /// <param name="contentType">
- /// Input text content type. The content type is defined in AcDbMLeaderStyle::ContentType.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kContentType override.
- /// </remarks>
- ///
- Acad::ErrorStatus setContentType (AcDbMLeaderStyle::ContentType contentType);
- /// <summary>
- /// Gets the content type of this mleader object.
- /// </summary>
- ///
- /// <returns>
- /// Returns the content type of this mleader object.
- /// </returns>
- ///
- AcDbMLeaderStyle::ContentType contentType () const;
- /// <summary>
- /// Sets the MText content in mleader content to use the textStyle specified by textStyleId.
- /// </summary>
- ///
- /// <param name="textStyleId">
- /// Input AcDbTextStyle objectId.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kTextStyleId override.
- /// </remarks>
- ///
- Acad::ErrorStatus setTextStyleId (AcDbObjectId textStyleId);
- /// <summary>
- /// Gets MText content textStyle objectId.
- /// </summary>
- ///
- /// <returns>
- /// Returns MText content textStyle objectId.
- /// </returns>
- ///
- AcDbObjectId textStyleId () const;
- /// <summary>
- /// Sets text attachment type of MText content to specific direction leader.
- /// </summary>
- ///
- /// <param name="textAttachmentType">
- /// Input text attachment type defined in AcDbMLeaderStyle::TextAttachmentType.
- /// </param>
- /// <param name="leaderDirection">
- /// Input text leader direction type defined in AcDbMLeaderStyle::LeaderDirectionType.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kTextLeft/RightAttachmentType override.
- /// </remarks>
- ///
- Acad::ErrorStatus setTextAttachmentType (AcDbMLeaderStyle::TextAttachmentType textAttachmentType,
- AcDbMLeaderStyle::LeaderDirectionType leaderDirection);
- /// <summary>
- /// Gets text attachment type of MText content from specific direction leader.
- /// </summary>
- ///
- /// <param name="leaderDirection">
- /// Input text leader direction type defined in AcDbMLeaderStyle::LeaderDirectionType.
- /// </param>
- ///
- /// <returns>
- /// Returns text attachment type of MText content.
- /// </returns>
- ///
- AcDbMLeaderStyle::TextAttachmentType textAttachmentType (AcDbMLeaderStyle::LeaderDirectionType leaderDirection) const;
- /// <remarks>
- /// Deprecated: This method will be removed in a future release.
- /// Instead, use the method:
- /// <code>
- /// Acad::ErrorStatus setTextAttachmentType(AcDbMLeaderStyle::TextAttachmentType textAttachmentType,
- /// AcDbMLeaderStyle::LeaderDirectionType leaderDirection);
- /// </code>
- /// </remarks>
- Acad::ErrorStatus setTextAttachmentType (AcDbMLeaderStyle::TextAttachmentType textAttachmentType);
- /// <remarks>
- /// Deprecated: This method will be removed in a future release.
- /// Instead, use the method:
- /// <code>
- /// AcDbMLeaderStyle::TextAttachmentType textAttachmentType(AcDbMLeaderStyle::LeaderDirectionType leaderDirection) const;
- /// </code>
- /// </remarks>
- AcDbMLeaderStyle::TextAttachmentType textAttachmentType () const;
- /// <summary>
- /// Sets the angle type of MText content which respect to the last leader line segment.
- /// </summary>
- ///
- /// <param name="textAngleType">
- /// Input text textAngleType type defined in AcDbMLeaderStyle::TextAngleType.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kTextAngleType override.
- /// </remarks>
- ///
- Acad::ErrorStatus setTextAngleType (AcDbMLeaderStyle::TextAngleType textAngleType);
- /// <summary>
- /// Gets the angle type of MText content.
- /// </summary>
- ///
- /// <returns>
- /// Returns the angle type of MText content.
- /// </returns>
- ///
- AcDbMLeaderStyle::TextAngleType textAngleType () const;
- /// <summary>
- /// Sets text alignment type of MText content.
- /// </summary>
- ///
- /// <param name="textAlignmentType">
- /// Input textAlignmentType defined in AcDbMLeaderStyle::TextAlignmentType.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kTextAlignmentType override.
- /// </remarks>
- ///
- Acad::ErrorStatus setTextAlignmentType (AcDbMLeaderStyle::TextAlignmentType textAlignmentType);
- /// <summary>
- /// Gets text alignment type of MText content.
- /// </summary>
- ///
- /// <returns>
- /// Returns text alignment type of MText content.
- /// </returns>
- ///
- AcDbMLeaderStyle::TextAlignmentType textAlignmentType () const;
- /// <summary>
- /// Sets text color of MText content.
- /// </summary>
- ///
- /// <param name="textColor">
- /// Input text color.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kTextColor override.
- /// </remarks>
- ///
- Acad::ErrorStatus setTextColor (const AcCmColor& textColor);
- /// <summary>
- /// Gets text color of MText content.
- /// </summary>
- ///
- /// <returns>
- /// Returns text color of MText content.
- /// </returns>
- ///
- AcCmColor textColor () const;
- /// <summary>
- /// Sets text height of MText content.
- /// </summary>
- ///
- /// <param name="textHeight">
- /// Input text height.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kTextHeight override.
- /// </remarks>
- ///
- Acad::ErrorStatus setTextHeight (double textHeight);
- /// <summary>
- /// Gets text height of MText content.
- /// </summary>
- ///
- /// <returns>
- /// Returns text height of MText content.
- /// </returns>
- ///
- double textHeight () const;
- /// <summary>
- /// Sets the text frame visible or invisible.
- /// </summary>
- ///
- /// <param name="enableFrameText">
- /// Input boolean to make the frame text visible/invisible.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kEnableFrameText override.
- /// </remarks>
- ///
- Acad::ErrorStatus setEnableFrameText (bool enableFrameText);
- /// <summary>
- /// Indicates whether text frame of MText is visible.
- /// </summary>
- ///
- /// <returns>
- /// Returns true if text frame is visible; otherwise, returns false.
- /// </returns>
- ///
- bool enableFrameText () const;
- /// <summary>
- /// Sets a MText object to mleader.
- /// </summary>
- ///
- /// <param name="pMText">
- /// Input the pointer of MText object.
- /// If input NULL, mleader use the default mtext defined in mleaderStyle.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kDefaultMText override.
- /// Mleader will not change the input pMText,
- /// and doesn't mind whether the pMText is database resident.
- /// If input NULL, mleader use the default mtext defined in mleaderStyle,
- /// and kDefaultMText will not be overrided.
- /// </remarks>
- ///
- Acad::ErrorStatus setMText (const AcDbMText* pMText);
- /// <summary>
- /// Gets a copy of mleader's mtext content
- /// </summary>
- ///
- /// <returns>
- /// Returns the copy of mtext content. If there is no mtext content, it returns NULL.
- /// </returns>
- ///
- /// <remarks>
- /// The returned mtext should be delete when it is no longer needed.
- /// </remarks>
- ///
- AcDbMText* mtext () const;
- /// <summary>
- /// Sets the id of referenced block, it's a block table record id.
- /// </summary>
- ///
- /// <param name="blockId">
- /// Input block table record Id.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kBlockId override.
- /// </remarks>
- ///
- Acad::ErrorStatus setBlockContentId (AcDbObjectId blockId);
- /// <summary>
- /// Gets the id of referenced block, it's a block table record id.
- /// </summary>
- ///
- /// <returns>
- /// Returns the id of referenced block, it's a block table record id.
- /// </returns>
- ///
- AcDbObjectId blockContentId () const;
- /// <summary>
- /// Sets block color in block content.
- /// </summary>
- ///
- /// <param name="blockColor">
- /// Input block color.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kBlockColor override.
- /// </remarks>
- ///
- Acad::ErrorStatus setBlockColor (const AcCmColor& blockColor);
- /// <summary>
- /// Gets block color in block content.
- /// </summary>
- ///
- /// <returns>
- /// Returns block color in block content.
- /// </returns>
- ///
- AcCmColor blockColor () const;
- /// <summary>
- /// Sets the scale of referenced block.
- /// </summary>
- ///
- /// <param name="scale">
- /// Input scale of referenced block.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kBlockScale override.
- /// </remarks>
- ///
- Acad::ErrorStatus setBlockScale (const AcGeScale3d& scale);
- /// <summary>
- /// Gets the scale of referenced block.
- /// </summary>
- ///
- /// <returns>
- /// Returns the sacle of referenced block.
- /// </returns>
- ///
- AcGeScale3d blockScale () const;
- /// <summary>
- /// Sets the rotation of referenced block.
- /// </summary>
- ///
- /// <param name="rotation">
- /// Input rotation of referenced block.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kBlockRotation override.
- /// Currently AutoCAD and the ARX API libraries make no use of this method.
- /// This method is deprecated and will be removed in a future version.
- /// </remarks>
- ///
- Acad::ErrorStatus setBlockRotation (double rotation);
- /// <summary>
- /// Gets the rotation of referenced block.
- /// </summary>
- ///
- /// <returns>
- /// Returns the rotation of referenced block.
- /// </returns>
- ///
- /// <remarks>
- /// Currently AutoCAD and the ARX API libraries make no use of this method.
- /// This method is deprecated and will be removed in a future version.
- /// </remarks>
- ///
- double blockRotation () const;
- /// <summary>
- /// Sets the type of how the block is connected with leader lines.
- /// </summary>
- ///
- /// <param name="blockConnectionType">
- /// Input the connection type defined in AcDbMLeaderStyle::BlockConnectionType.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- /// <remarks>
- /// This function will set PropertyOverrideType kBlockConnectionType override.
- /// </remarks>
- ///
- Acad::ErrorStatus setBlockConnectionType (AcDbMLeaderStyle::BlockConnectionType blockConnectionType);
- /// <summary>
- /// Gets the type of how the block is connected with leader lines.
- /// </summary>
- ///
- /// <returns>
- /// Returns the type of how the block is connected with leader lines.
- /// </returns>
- ///
- AcDbMLeaderStyle::BlockConnectionType blockConnectionType () const;
- /// <summary>
- /// Use this function to make the annotation scale enable or disable.
- /// </summary>
- ///
- /// <param name="enableAnnotationScale">
- /// Input boolean to make the annotation scale enable/disable.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setEnableAnnotationScale(bool enableAnnotationScale);
- /// <summary>
- /// Indicates whether annotation scale is enable.
- /// </summary>
- ///
- /// <returns>
- /// Returns true if annotation scale is enable; otherwise, returns false.
- /// </returns>
- ///
- bool enableAnnotationScale () const;
- /// <summary>
- /// Sets the style of this MLeader object.
- /// </summary>
- ///
- /// <param name="newStyleId">
- /// Input objectId of the new style.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setMLeaderStyle (AcDbObjectId newStyleId);
- /// <summary>
- /// Gets the object ID of current mleader object style.
- /// </summary>
- ///
- /// <returns>
- /// Returns the object ID of current mleader object style.
- /// </returns>
- ///
- AcDbObjectId MLeaderStyle ();
- /// <summary>
- /// Gets the current mleader's properties, include override properties.
- /// </summary>
- ///
- /// <param name="mleaderStyle">
- /// Input a reference of mleaderStyle, mleader object will set its properties to this object.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getOverridedMLeaderStyle(AcDbMLeaderStyle& mleaderStyle);
- /// <summary>
- /// Sets the context data manager to mleader.
- /// </summary>
- ///
- /// <param name="pContextDataManager">
- /// Input the pointer of context data manager.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setContextDataManager (void* pContextDataManager);
- /// <summary>
- /// Gets the context data manager in mleader.
- /// </summary>
- ///
- /// <returns>
- /// Returns the context data manager in mleader.
- /// </returns>
- ///
- void* getContextDataManager () const;
- /// <summary>
- /// Sets the position of mleader block content.
- /// </summary>
- ///
- /// <param name="position">
- /// Input the position of mleader block content.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setBlockPosition (const AcGePoint3d& position);
- /// <summary>
- /// Gets the position of mleader block content.
- /// </summary>
- ///
- /// <param name="position">
- /// OutPut the position of mleader block content.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getBlockPosition (AcGePoint3d& position) const;
- /// <summary>
- /// Sets the location of mleader mtext content.
- /// </summary>
- ///
- /// <param name="location">
- /// Input the location of mleader mtext content.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setTextLocation (const AcGePoint3d& location);
- /// <summary>
- /// Gets the location of mleader mtext content.
- /// </summary>
- ///
- /// <param name="location">
- /// OutPut the location of mleader mtext content.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getTextLocation (AcGePoint3d& location) const;
- /// <summary>
- /// Sets the location of mleader tolerance content.
- /// </summary>
- ///
- /// <param name="location">
- /// Input the location of mleader tolerance content.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setToleranceLocation (const AcGePoint3d& location);
- /// <summary>
- /// Gets the location of mleader tolerance content.
- /// </summary>
- ///
- /// <param name="location">
- /// OutPut the location of mleader tolerance content.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus getToleranceLocation (AcGePoint3d& location) const;
- /// <summary>
- /// Indicates whether mleader has content.
- /// </summary>
- ///
- /// <returns>
- /// Returns true if mleader has content; otherwise, returns false.
- /// </returns>
- ///
- bool hasContent () const;
- /// <summary>
- /// Gets the leader connection point of the specific direction.
- /// </summary>
- ///
- /// <param name="vect">
- /// Input the specific direction.
- /// </param>
- /// <param name="point">
- /// Output the connection point.
- /// </param>
- ///
- /// <returns>
- /// Returns the object id of the arrow head symbol of the specific leaderline.
- /// </returns>
- ///
- Acad::ErrorStatus connectionPoint (const AcGeVector3d& vect,
- AcGePoint3d& point) const;
- /// <summary>
- /// Gets the leader connection point of the specific direction.
- /// </summary>
- ///
- /// <param name="vect">
- /// Input the specific direction.
- /// </param>
- /// <param name="point">
- /// Output the connection point.
- /// </param>
- /// <param name="textAttachmentDirection">
- /// Specify if the leader attaches to the MText horizontally or vertically.
- /// </param>
- ///
- /// <returns>
- /// Returns the object id of the arrow head symbol of the specific leaderline.
- /// </returns>
- ///
- Acad::ErrorStatus connectionPoint (const AcGeVector3d& vect,
- AcGePoint3d& point,
- AcDbMLeaderStyle::TextAttachmentDirection textAttachmentDirection) const;
- /// <summary>
- /// Recaculate the dim break point.
- /// </summary>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus recomputeBreakPoints ();
- /// <summary>
- /// Adds current mleader object to the modal space of input database.
- /// </summary>
- ///
- /// <param name="pDb">
- /// Input database into which the current mleader object should be added.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus postMLeaderToDb (AcDbDatabase* pDb);
- // support dim associativity
- /// <summary>
- /// Update leaderLine position if leaderLine is associate with geometries
- /// </summary>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus updateLeaderLinePosition();
- /// <summary>
- /// Remove the input leaderline's association with geometries.
- /// </summary>
- ///
- /// <param name="leaderLineIndex">
- /// Input leaderline index.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus removeLeaderLineRefAssoc(int leaderLineIndex) const;
- /// <summary>
- /// Update the mleader context's arrowhead, landing gap, dogleg length and textHeight or blockScale.
- /// </summary>
- ///
- /// <param name="pContext">
- /// Input pointer to mleader context data.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus updateContentScale(AcDbMLeaderObjectContextData* pContext);
- /// <summary>
- /// Sets text attachment Direction of MText content.
- /// </summary>
- ///
- /// <param name="textAttachmentDirection">
- /// Input text attachment direction defined in AcDbMLeaderStyle::TextAttachmentDirection.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setTextAttachmentDirection(AcDbMLeaderStyle::TextAttachmentDirection textAttachmentDirection);
- /// <summary>
- /// Gets text attachment direction of MText content.
- /// </summary>
- ///
- /// <returns>
- /// Returns text attachment direction of MText content.
- /// </returns>
- ///
- AcDbMLeaderStyle::TextAttachmentDirection textAttachmentDirection() const;
- /// <summary>
- /// Sets if horizontal leader lines are automatically extended to text.
- /// </summary>
- ///
- /// <param name="value">
- /// Input boolean to make the automatically leader extension on/off.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- Acad::ErrorStatus setExtendLeaderToText(bool value);
- /// <summary>
- /// Gets if horizontal leader lines are automatically extended to text.
- /// </summary>
- ///
- /// <returns>
- /// Returns true if horizontal leader lines are automatically extended to text; otherwise, returns false.
- /// </returns>
- ///
- bool extendLeaderToText() const;
- protected:
- /// <summary>
- /// Gets corresponding COM wrapper class ID.
- /// </summary>
- ///
- /// <param name="pClsid">
- /// OutPut corresponding COM wrapper class ID.
- /// </param>
- ///
- /// <returns>
- /// Returns Acad::eOk if successful.Return values for errors are implementation-dependent.
- /// </returns>
- ///
- virtual Acad::ErrorStatus subGetClassID (CLSID* pClsid) const;
- };
- #endif // __DBMLEADER_H__
|