Changes between Version 25 and Version 26 of PythonOcc/primitives
- Timestamp:
- Nov 18, 2013, 4:10:33 PM (11 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
PythonOcc/primitives
v25 v26 401 401 #!python 402 402 from OCC.BRepAlgoAPI import * 403 }}} 404 405 Seštevanje (Fusion) [[Image(20.png, right)]] 403 }}} 404 [[BR]][[BR]] 405 406 Seštevanje (Fusion) [[Image(20.png, right)]] [[BR]][[BR]] 406 407 Operacija seštevanja objektov se izvaja z uporabo ukaza [http://opencascade.sourcearchive.com/documentation/6.3.0.dfsg.1/classBRepAlgoAPI__Fuse.html BRepAlgoAPI__Fuse], kjer dodamo kot argumente 3D obliki, ki ju želimo združiti: 407 408 {{{ … … 409 410 sestevanje = BRepAlgoAPI_Fuse(Oblika1,Oblika2) 410 411 }}} 411 [[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]] [[BR]][[BR]]412 413 414 Presek (Common) [[Image(21.png, right)]] 412 [[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]] 413 414 415 Presek (Common) [[Image(21.png, right)]] [[BR]][[BR]] 415 416 Operacija izdelave preseka objektov se izvaja z uporabo ukaza [http://opencascade.sourcearchive.com/documentation/6.3.0.dfsg.1/classBRepAlgoAPI__Common.html BRepAlgoAPI__Common], kjer dodamo kot argumente 3D obliki, med katerimi želimo poiskati skupni volumen: 416 417 {{{ … … 418 419 presek = BRepAlgoAPI_Common(Oblika1,Oblika2) 419 420 }}} 420 [[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]] [[BR]][[BR]]421 422 423 Odštevanje (Cut) [[Image(22.png, right)]] 421 [[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]] 422 423 424 Odštevanje (Cut) [[Image(22.png, right)]] [[BR]][[BR]] 424 425 Operacija odštevanjaobjektov se izvaja z uporabo ukaza [http://opencascade.sourcearchive.com/documentation/6.3.0.dfsg.1/classBRepAlgoAPI__Cut.html BRepAlgoAPI__Cut], kjer dodamo kot argumente 3D obliki. Prvi argument predstavlja osnovno obliko, drugi argument pa predstavlja geometrijo, ki jo odštevamo. Vrstni red je v tem primeru pomemben! 425 426 {{{ … … 431 432 432 433 == Geometrijske transformacije == 433 Translacija objekta (Transform) [[Image(23.png, right)]] 434 Translacija objekta (Transform) [[Image(23.png, right)]] [[BR]][[BR]] 434 435 Za premik objekta v prostoru se uporabi funkcija za translacijo. Pri tem je potrebno najprej določiti vektor premika, nato pa izberemo obliko, ki jo želimo premakniti v prostoru. Preprosta koda je zapisana: 435 436 {{{ … … 443 444 444 445 445 Rotacija objekta (Rotation) [[Image(24.png, right)]] 446 Rotacija objekta (Rotation) [[Image(24.png, right)]] [[BR]][[BR]] 446 447 V kolikor želimo obstoječi objekt rotirati, je potrebno določiti najprej referenčno točko, ki služi kot lokacija osi vrtenja, ter nato določiti še rotacijsko os s smerjo vektorja. Potrebno je tudi določiti kot rotacije, ki ga določimo v radianih. Nazadnje izberemeo obliko, ki jo hočemo zavrteti okoli izbrane osi. Preprosti algoritem je zapisan: 447 448 {{{ … … 453 454 rezultat = BRepBuilderAPI_Transform(Oblika, TransfRot).Shape() 454 455 }}} 455 [[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]] [[BR]][[BR]][[BR]][[BR]]456 457 458 Povečava objekta (Scale) [[Image(24a.png, right)]] 456 [[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]][[BR]] 457 458 459 Povečava objekta (Scale) [[Image(24a.png, right)]] [[BR]][[BR]] 459 460 Objektu lahko spremmenimo velikost tudi po tem, ko je le ta enkrat že narejen. To napravimo z uporabo orodja za povečavo. Pri tem rabimo določiti referenčno točko za izvajanje geometrijske operacije ter merilo (povečavo objekta). Nazadnje izberemeo obliko, ki ji hočemo spremeniti merilo. Preprosti algoritem je zapisan: 460 461 {{{