xiequanfu 发表于 2004-10-13 21:15:00

求助,无名块的问题

请问各位主高手,怎样用ARX编写实现无名块(*U)的具体程序,谢谢!

王咣生 发表于 2004-10-13 22:22:00

回复

帮助中的例子:


<P class=body>The following code begins an <FONT style="BACKGROUND-COLOR: #0a246a" color=#ffffff>anonymous</FONT> block, ends it, and retrieves its name.

<PRE class=prog_in_0>int status; </PRE><PRE class=prog_in_0>struct resbuf *entlist; </PRE><PRE class=prog_in_0>ads_point basept; </PRE><PRE class=prog_in_0>char newblkname; </PRE><PRE class=prog_in_0> </PRE><PRE class=prog_in_0>ads_point pnt1 = ( 0.0, 0.0, 0.0); </PRE><PRE class=prog_in_0>entlist = acutBuildList(</PRE><PRE class=prog_in_0>    RTDXF0, "BLOCK", </PRE><PRE class=prog_in_0>    2, "*ANON", // Only the '*' matters.</PRE><PRE class=prog_in_0>    10, "1", // No other flags are set.</PRE><PRE class=prog_in_0>    0 ); </PRE><PRE class=prog_in_0> </PRE><PRE class=prog_in_0>if (entlist == NULL) { </PRE><PRE class=prog_in_0>    acdbFail("Unable to create result buffer list\n"); </PRE><PRE class=prog_in_0>    return BAD; </PRE><PRE class=prog_in_0>} </PRE><PRE class=prog_in_0> </PRE><PRE class=prog_in_0>status = acdbEntMake(entlist); </PRE><PRE class=prog_in_0>acutRelRb(entlist); // Release acdbEntMake buffer.</PRE><PRE class=prog_in_0> </PRE><PRE class=prog_in_0>if (status != RTNORM) { </PRE><PRE class=prog_in_0>    acdbFail("Unable to start <FONT style="BACKGROUND-COLOR: #0a246a" color=#ffffff>anonymous</FONT> block\n"); </PRE><PRE class=prog_in_0>    return BAD; </PRE><PRE class=prog_in_0>} </PRE><PRE class=prog_in_0> </PRE><PRE class=prog_in_0>// Add entities to the block by more acdbEntMake calls.</PRE><PRE class=prog_in_0>. </PRE><PRE class=prog_in_0>. </PRE><PRE class=prog_in_0>. </PRE><PRE class=prog_in_0>entlist = acutBuildList(RTDXF0, "ENDBLK", 0 ); </PRE><PRE class=prog_in_0> </PRE><PRE class=prog_in_0>if (entlist == NULL) { </PRE><PRE class=prog_in_0>    acdbFail("Unable to create result buffer list\n"); </PRE><PRE class=prog_in_0>    return BAD; </PRE><PRE class=prog_in_0>} </PRE><PRE class=prog_in_0> </PRE><PRE class=prog_in_0>status = acdbEntMake(entlist); </PRE><PRE class=prog_in_0>acutRelRb(entlist); // Release acdbEntMake buffer.</PRE><PRE class=prog_in_0> </PRE><PRE class=prog_in_0>if (status != RTKWORD) { </PRE><PRE class=prog_in_0>    acdbFail("Unable to close <FONT style="BACKGROUND-COLOR: #0a246a" color=#ffffff>anonymous</FONT> block\n"); </PRE><PRE class=prog_in_0>    return BAD; </PRE><PRE class=prog_in_0>} </PRE><PRE class=prog_in_0>status = acedGetInput(newblkname); </PRE><PRE class=prog_in_0> </PRE><PRE class=prog_in_0>if (status != RTNORM) { </PRE><PRE class=prog_in_0>    acdbFail("<FONT style="BACKGROUND-COLOR: #0a246a" color=#ffffff>Anonymous</FONT> block not created\n"); </PRE><PRE class=prog_in_0>    return BAD; </PRE><PRE class=prog_in_end_0>} </PRE>
<P class=body>To reference an <FONT style="BACKGROUND-COLOR: #0a246a" color=#ffffff>anonymous</FONT> block, create an insert entity with acdbEntMake(). (You cannot pass an <FONT style="BACKGROUND-COLOR: #0a246a" color=#ffffff>anonymous</FONT> block to the INSERT command.)


<P class=body>Continuing the previous example, the following code fragment inserts the <FONT style="BACKGROUND-COLOR: #0a246a" color=#ffffff>anonymous</FONT> block at (0,0).

<PRE class=prog_in_0>basept = basept = basept = 0.0; </PRE><PRE class=prog_in_0> </PRE><PRE class=prog_in_0>entlist = acutBuildList(</PRE><PRE class=prog_in_0>    RTDXF0, "INSERT", </PRE><PRE class=prog_in_0>    2, newblkname, // From acedGetInput</PRE><PRE class=prog_in_0>    10, basept, </PRE><PRE class=prog_in_0>    0 ); </PRE><PRE class=prog_in_0> </PRE><PRE class=prog_in_0>if (entlist == NULL) { </PRE><PRE class=prog_in_0>    acdbFail("Unable to create result buffer list\n"); </PRE><PRE class=prog_in_0>    return BAD; </PRE><PRE class=prog_in_0>} </PRE><PRE class=prog_in_0> </PRE><PRE class=prog_in_0>status = acdbEntMake(entlist); </PRE><PRE class=prog_in_0>acutRelRb(entlist); // Release acdbEntMake buffer.</PRE><PRE class=prog_in_0> </PRE><PRE class=prog_in_0>if (status != RTNORM) { </PRE><PRE class=prog_in_0>    acdbFail("Unable to insert <FONT style="BACKGROUND-COLOR: #0a246a" color=#ffffff>anonymous</FONT> block\n"); </PRE><PRE class=prog_in_0>    return BAD; </PRE><PRE class=prog_in_end_0>} </PRE>
页: [1]
查看完整版本: 求助,无名块的问题