⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 2004-february.txt

📁 acis说明文档
💻 TXT
📖 第 1 页 / 共 3 页
字号:
Subject: [Acis-alliance] SAT formatMessage-ID: <NY8a8841-53fd50f9@steelcase.com>Did you ever find the meaning of data in SAT file?Jon A. Prisbe (Kforce Inc.)Accelerate Software Developerjprisbe@steelcase.com616-698-4876>Hi, dear friends,>I am a beginner of ACIS. I am using ACIS 7.0. I want to know exactly themeaning of data in SAT file. example:>3 shell $-1 -1 $-1 $-1 $-1 $4 $-1 $1 #> 4 face $-1 -1 $-1 $5 $6 $3 $-1 $7 >>forward single #>5 face $-1 -1 $-1 $8 $9 $3 $-1 $10 reversed single #>6 loop $-1 -1 $-1 $-1 $11 $4 #>7 plane-surface $-1 -1 $-1 0 0 15 0 0 1 1 0 0 forward_v I I I I #>Can anyone kindly explain the meaning of data? Any response is appreciated.> regards shaohuiFrom itagaki at armonicos.co.jp  Tue Feb  3 10:40:50 2004From: itagaki at armonicos.co.jp (=?ISO-2022-JP?B?GyRCSEQzQElwSScbKEI=?=)Date: Mon Feb  2 20:37:30 2004Subject: [Acis-alliance] fatal error LNK1104In-Reply-To: <20040202154142.31843.qmail@web12701.mail.yahoo.com>References: <20040202154142.31843.qmail@web12701.mail.yahoo.com>Message-ID: <20040203103530.D4F3.ITAGAKI@armonicos.co.jp>Hello GordonYou should set build option on C/C++ page then select category ->preprocessor.Add NT,ACIS_DLL,NT_DLL  : release    NT,ACIS_DLL,NT_DLLD : debug try that please.On Mon, 2 Feb 2004 15:41:42 +0000 (GMT)gordon baylor <g_baylor@yahoo.com> wrote:> James,> Thank you for the reply. However, I tried what you> said and am still getting the same error. The only> thing that doesn't seem to match is that when I went> to edit my included libraries it was called > SpaBased.dll instead of SpaBased.lib - does this make> any difference.> > Thanks again> Gordon> > > > > > Gordon,> > Yes, it has to do with the renaming of the libraries> in R11.  In your> project settings you will have to go to the link tab> and edit your > included> libraries.  I think the one you are looking for is> SpaBased.lib or> SpaBase.lib, depending if you are making a debug> build.  You will also > have> to change the rest of the library names if you are> using other parts > (e.g.> SPAAVisd.lib SpaACISd.lib, SpaPartd.lib, etc.)  You> can find the names > of> all of these libraries in the documentation or you can> just look in the> $(A3DT)\lib\NT_DLL folder to find the names.  > > Also, all of the header files have been put in one> directory,> $(A3DT)\include, so you will need to go to the C/C++> tab and change the> include directories.  You should be able to delete all> of the Acis > related> ones and just put $(A3DT)\include to replace all of> them.  > > Hope this helps.> > James> > -----Original Message-----> From: acis-alliance-bounces@cs.columbia.edu> [mailto:acis-alliance-bounces@cs.columbia.edu] On> Behalf Of gordon > baylor> Sent: Friday, January 30, 2004 10:52 AM> To: acis-alliance@cs.columbia.edu> Subject: [Acis-alliance] fatal error LNK1104> > Hello everyone,> I am trying to get a simple console application> running but I am getting link error:> > LINK : fatal error LNK1104: cannot open file> "baseutil.lib"> Error executing link.exe.> > I have ACIS R11. Does anybody know what the problem> is? Is it anything to do with baseutil.lib being> replaced by SpaBase> Thanks in advance.> > Gordon> > > > > 	> 	> 		> ___________________________________________________________> BT Yahoo! Broadband - Free modem offer, sign up online today and save ?80 http://btyahoo.yahoo.co.uk> _______________________________________________> Acis-alliance mailing list> Acis-alliance@cs.columbia.edu> http://lists.cs.columbia.edu/mailman/listinfo/acis-alliance----------------------------------------------------Takehiko Itagaki mailto:itagaki@armonicos.co.jpArmonicos Co., Ltd. APD ( Application Project Division )Act Tower 21F, 111-2 Itaya-machi, Hamamatsu, Shizuoka, 430-7721 JAPANPhone (+81)53(459)1000  (+81)53(459)1148Fax    (+81)53(459)1155----------------------------------------------------From Markus.Herb at de.TRUMPF.com  Wed Feb  4 14:09:23 2004From: Markus.Herb at de.TRUMPF.com (Markus.Herb@de.TRUMPF.com)Date: Wed Feb  4 08:14:59 2004Subject: [Acis-alliance] From gi/gl husk to HOOPS?Message-ID: <71A23A253EBDD711933A00B0D0F0B13101351B0A@srvmail2.corp.trumpf.com>Hi dear ACIS fans,I'm porting our application from ACIS 7 to the most recent ACIS 12 SP5.One thing that disturbs is, that spatial no longer supports the gi/gl huskand suggests instead to use the newer HOOPS for visualization purposes.Since i'm not very familiar with gi/gl let alone HOOPS i'm now searchingsome kind of tutorial or cross reference to move from gi/gl to HOOPS.Any help welcomeGreetingsMarkusFrom ywenbo at tom.com  Tue Feb 10 18:37:49 2004From: ywenbo at tom.com (Yang Wenbo)Date: Tue Feb 10 05:36:53 2004Subject: [Acis-alliance] How to rotate patterned bodyMessage-ID: <002401c3efc1$f3ca8bd0$501a75ca@walker>Hi,

I used the following code(acisR10) to rotate patterned body: 

//////////////////////////////////////////////////////////////////////
 BODY* roller;
 // Create a roller
 api_solid_cylinder_cone(SPAposition(0, 0, 0), SPAposition(24, 0, 0), 20, 20, 20, NULL, roller);

 SPAvector disp(70,0,0);
 SPAtransf translate_trans=translate_transf(disp);
 api_apply_transf((ENTITY*)roller,translate_trans);
 SPAtransf rotate_trans=rotate_transf(PI/8,SPAvector(0,0,1));
 api_apply_transf((ENTITY*)roller,rotate_trans);
 SPAtransf translate_trans2=translate_transf(SPAvector(0,180,0));
 api_apply_transf((ENTITY*)roller,translate_trans2);

 // Create a pattern
  pattern* pat = NULL;
  SPAposition center(0, 180, 0);
  SPAvector normal(0, 0, 1);
  int num_angular = 8;
  int num_axial = 1;
  double spacing = 0.0;
  api_cylindrical_pattern(pat, center, normal, num_angular, num_axial, spacing);
  // Apply the pattern to the prism
  api_set_entity_pattern(roller, pat);
  // Clean up
 pat->remove();
 
//rotate the patterned roller
 api_apply_transf((ENTITY*)roller,rotate_trans);
/////////////////////////////////////////////////////////////////////////////////////

The following is the sat file created.

1000 0 1 0           
32 Xi'an Jiaotong University - 10.0 12 ACIS 10.0 NT 24 Tue Feb 10 17:09:45 2004 
1 9.9999999999999995e-007 1e-010 
body $-1 -1 $1 0 0 $2 $-1 $3 F #
APATTERN $-1 -1 @44 DOMAIN(VEC(0,180,0)+VEC(0,0,1)*0*X2,0,7,0,0) 
                   0 
                  @78 VEC(-1,0,0)*COS(0.7853981633974483*X+0)+VEC(0,1,0)*SIN(0.7853981633974483*X+0) 
                   0 
                  @10 VEC(0,0,1) 
                   0 
                  @8 null_law @8 null_law @8 null_law 0 F 
                   #
lump $-1 -1 $1 0 0 $-1 $4 $0 F #
transform $-1 -1 0.92387953507477749 0.3826834261762756 0 -0.3826834261762756 0.92387953507477749 0 0 0 1 0 0 0 1 rotate no_reflect no_shear #
shell $-1 -1 $1 0 0 $-1 $-1 $5 $-1 $2 F #
face $-1 -1 $1 0 0 $6 $7 $4 $-1 $8 forward single F F #
face $-1 -1 $1 0 0 $9 $10 $4 $-1 $11 forward single F F #
loop $-1 -1 $1 0 0 $12 $13 $5 F unknown #
………………

it can be seen from the object created that the roller be rotated firstly and then be patterned. 
it is the reverse steps I wanted.
any help will be appreciated.

Yang Wenbo-------------- next part --------------An HTML attachment was scrubbed...URL: http://lists.cs.columbia.edu/pipermail/acis-alliance/attachments/20040210/b98d1b20/attachment.htmFrom prwolfe at sandia.gov  Wed Feb 11 10:53:40 2004From: prwolfe at sandia.gov (Wolfenbarger, Paul R)Date: Wed Feb 11 12:54:12 2004Subject: [Acis-alliance] RE: ITS CADMessage-ID: <03781128C7B74B4DBC27C55859C9D7380F1B0F6C@es06snlnt.sandia.gov>Matthew,This is a regular question from many ACIS users both experienced and not.  Ioften feel like I should write a paper on the silly thing, so here goes astart.  If I get a bit to much for you, just slap my hand and tell me toKeep It Simple S.Spatial does not use the standard memory functionality as you are aware.The Bulletin Board system relies on a number of memory tricks to keepregular new/malloc and delete/free from working on all items derived fromENTITY (and a number which are not - you get to guess on those each time.)This system was designed for the convenience of a CAD system (AutoCAD) andis not designed for people running a simulation where roll back/forwardcapabilities are of little or no importance.How it worksAny call starting with api_ is wrapped in a macro set of API_BEGIN/END.  Ifthere is no open Bulletin Board, the BEGIN macro will open one, otherwise,it opens a sub-BB which will get wrapped into the next higher level one.These macros also start some error handling and declare a scope and anoutcome object for that error handling named result (so if you declare oneof your own be sure to use another name or scope it.)  The code in thefunction then goes about creating and modifying stuff as it likes and thememory system keeps a running log of it in the form of BB entries that areactually copies of the entities at each modification/delete.  As you canimagine, this adds a lot of memory in a hurry.  The API_END call then checksresult for errors, sets up a few other catch blocks, and ends the scope.  Italso ends the bulletin board or sub-board.So how do we go about recovering this memory stored in the BB?  And whathappens in a call like yours where there is no BB open?If there is no BB open, a number of calls will fail, but some may work.  Thebad news is that either way, the copies that belong on the BB were createdand now exist in limbo and cannot be deleted.  Spatial provides methods fordealing with BB's such as api_note_state, api_delete_ds, api_change_state,and a few others.  None of these will function if an active BB exists, sothey must be at a top level.  So if I want to remove the stored memory fromthe BB system I can use something like.   if (_global_api_level() == 0) // checks to see that a BB is not open   {      DELTA_STATE* ds = NULL ;#ifndef NDEBUG      cout << check_free_lists() << " " ;  // This spits out a large amountof memory debugging info#endif      outcome res = api_note_state(ds) ; // retrieves the delta from thelast time this was done till now - may cover several boards.      error_handling(res, "noteState", "api_note_state") ;        if (ds)       {         res = api_delete_ds(ds) ; // asks the memory system to remove theboards in this delta state                       //- NOTE: The memory is not returned to the operatingsystem, but only to the freelist                      //- managed by the ACIS kernel.  This means the nexttime you ask for memory it will be                      //- allocated from the free list rather than having toask the OS for more memory.         error_handling(res, "noteState", "api_delete_ds") ;      }#ifndef NDEBUG            cout << check_free_lists() << endl ;  // again the debugging info soyou can see the difference.   }   else    {      cout << "\n WARNING! noteState() called from inside an APIfunction\n";#endif   }  For the type of work you are doing, the simplest thing would be to removethe memory subsystem entirely and let the simple and fast new/deletefunctions from C++ (or malloc/free from C) do the work without anyadditional programming right?  Not in my experience.  The freelist method isconsiderably faster than the OS memory request are since large contiguousmemory block can be requested and optimal use strategies utilized.  So whatabout the pain of calling all of the above code every time you use an apifunction of your own or spatials?  There are essentially 3 choices.1) API_NOP_BEGIN/API_NOP_END - This is a set of macros designed to dosomething similar to the above work for you (actually tries not to store thecopies in the first place).  The problem is that there must be no higherlevel bulletin board open (despite what any documentation might tell you),although the leak is much smaller than what you would have without the NOPand using the cleanup shown.2) Re-compile the acis memory manager to eliminate this behavior.  Themmgr.cxx and freelist.cxx files are given to you (as of acis 7 I believe),so you can try re-working these.  A number of macros are present in the codeto affect the compilation including one to turn everything off(-DMMGR_DISABLED.)  I did try this once and was not happy with the speed ofthe results, and have never spent the time to try and get a bettercombination of macros done (see the bewildering array of them in mmgr.hxx),mainly because the NOP/cleanup processes work as well as they do.  This wasnot available on acis 6.3) initialize_base allows you to pass in new allocation routines that cancustomize the memory system to your uses.  If I was a major long-runningconsumer app, I might go this route, but the cost of getting this just rightfor a small project or a student project is likely a bit much.3a) ignore it and let the system recover things at exit.  I admit I do agood bit of this as most of my apps do not run long enough for this to be aproblem, but I know that ITS can easily run into problems with long runs andtight memory spaces on the parallel machines.So we are left with something like API_NOP_BEGIN  hit* blarg = raytest_face(...) ;API_NOP_ENDOk, so this covers memory that was used during the call you make toraytest_face, but what about the memory returned from the function?  If youdo not do anything, it will be leaked.  If you have the above and then callapi_del_entity or delete on the hits will there be a problem with items puton the BB?  Does it need to be inside the BEGIN/END macro or does it matter?hit is derived from ACIS_OBJECT rather than ENTITY which should put it intothe freelist system, but not onto a bulletin board as that is done in theENTITY constructor.  So we should be able to delete them whenever we wishtaking the scoping of the API_NOP_BEBIN/END macros into account and usingthe overloaded delete (just use ACIS_DELETE and you should be ok for futurechanges.)  If you do not delete them, you get a typical heap-type leakbehavior with the exception that the memory is in the freelist rather thanthe OS heap.  As always, this will be cleared up when the program exits (notwhen you call api_stop_modeller as far as I can tell.)Well, this was a bit long, but it contains a good bit of data I have gleanedfrom my experience with memory clean-up and from a number of generations ofACIS documentation (most of this is there, but it is a bit scattered.)  I amposting this to the acis alliance as well in the hopes that it will helpsomeone else and so I will have a permanent copy to add to the next timethis comes up (I think this is the third time I have written somethingsimilar.)If this does not help, please feel free to ask whatever will help clearthings up.----------------------------------------------------------------------------------------Paul R. Wolfenbarger, P.E., M.S.Advanced Engineering & Manufacturing Software DevelopmentIntelligent Systems and Robotics CenterSandia National LaboratoriesP.O. Box 5800   MS 1010Albuquerque, NM  87185-1010505-844-5458 phone 505-844-8323 faxprwolfe@sandia.govhttp://www.sandia.gov/isrc---------------------------------------------------------------------------------------------Original Message-----From: mrm3499 [mailto:mrm3499@ksu.edu]Sent: Tuesday, February 10, 2004 5:15 PMTo: prwolfe@sandia.govSubject: ITS CADPaul,Hi this Matthew Martin, I'm a student intern for dept 15341 working on theITS CAD geometry engine. I was hoping you could answer a few questions for me about ACIS 6.I'm having a problem with ACIS and memory leaks. I need to call the raytest_face function a few billion times, but unfortunately it is slow and seems have a memory leak. I was hoping that you could explain how to use theAPI_BEGIN and API_NOP_BEGIN macros, along with any other engine settingsthat will increase performance and reduce memory usage. The only functionality I need out of ACIS is the raytest_face command.These are the initializing procedures that I call:  api_start_modeller(0);  api_initialize_constructors();  api_initialize_intersectors();  api_initialize_kernel();  api_initialize_spline();  api_initialize_booleans();  api_initialize_euler_ops();  api_logging(FALSE);and then I call raytest_face a few billion times:hit* face_hit = raytest_face(ray_name,face_name);Do I need to delete the entries in the returned hit list each time? How canI keep the bulletin board from slowing me down and using up memory? Should I wrap this call in macros?Thanks for your help; I find that the ACIS manual lacks an explanation of these topics, so your help and time is really appreciated.-Matthew Martinmrm3499@ksu.eduFrom zz_zxc123 at cims.sjtu.edu.cn  Mon Feb 16 11:36:18 2004From: zz_zxc123 at cims.sjtu.edu.cn (zhang xuechang)Date: Sun Feb 15 22:36:07 2004Subject: [Acis-alliance] How to get a bounding box in acisR11Message-ID: <001201c3f43e$0c6fd070$c300a8c0@zxc>Hello,everyone!
    I want to get a bounding box of a spline face. Now my program was written as fellow,but it is wrong when running in the <SPAposition ttt=bx->high()>. I know the error that is in the function of bound(). So please tell me how to get a bounding box in AcisR11.

         api_make_torus(50,10,pBody);
         SPAbox* bx =pBody->bound();
         SPAposition ttt=bx->high();

  any help is my appreciation.

zhang xuechang
2004.2.16-------------- next part --------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -