angel0917 发表于 2007-11-7 09:39:00

使用acedSSNameX后无法获得选择点

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