使用acedSSNameX后无法获得选择点
<p>int extractEntityInfo(struct resbuf *rb,<br/> int& sel_method,<br/> ads_name ename,<br/> ads_name subname,<br/> short& marker,<br/> AcGePoint3d& pickpnt,<br/> AcGeVector3d& pickvec,<br/> // AcGeMatrix3d& xform,<br/> struct resbuf*& containers)<br/>{<br/> if ( rb == NULL || rb->restype != RTLB )<br/> {<br/> assert(0);<br/> return 0;<br/> }<br/> <br/> // Get the selection method.<br/> rb = rb->rbnext; </p><p> sel_method = rb->resval.rint;<br/> acutPrintf(_T("method %d"),sel_method);<br/> // Get the first ename (could be either the actual entity name or subentity name).<br/> rb = rb->rbnext; // Bump up to the first name, always after sel method.<br/> ename = rb->resval.rlname;<br/> ename = rb->resval.rlname;<br/> subname = rb->resval.rlname;<br/> subname = rb->resval.rlname;<br/> <br/> // Get marker info.<br/> rb = rb->rbnext;<br/> marker = rb->resval.rint;<br/> if(sel_method==1 ||sel_method==2)<br/> {rb->rbnext;<br/> rb->rbnext;<br/> rb->rbnext;<br/> pickpnt.set(rb->resval.rpoint,rb->resval.rpoint,rb->resval.rpoint);<br/> rb=rb->rbnext;<br/> if(rb->restype==RT3DPOINT)<br/> {<br/> pickvec.set(rb->resval.rpoint,rb->resval.rpoint,rb->resval.rpoint);<br/> rb=rb->rbnext;<br/> }<br/> }<br/> return 1;<br/>}</p><p> </p><p>调用该函数后能够获得实体名、选择方式、GS,但是选择点pickpnt和 pickvec总是(0,0,0),不知为什么?</p><p>各位帮帮忙吧!感激不尽!!</p>
页:
[1]