Changes between Version 25 and Version 26 of PythonOcc/primitives


Ignore:
Timestamp:
Nov 18, 2013, 4:10:33 PM (10 years ago)
Author:
ptomsic
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • PythonOcc/primitives

    v25 v26  
    401401#!python
    402402from OCC.BRepAlgoAPI import *
    403 }}}
    404 
    405 Seštevanje (Fusion) [[Image(20.png, right)]]
     403}}} 
     404[[BR]][[BR]]
     405
     406Seštevanje (Fusion) [[Image(20.png, right)]]  [[BR]][[BR]]
    406407Operacija 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:
    407408{{{
     
    409410sestevanje = BRepAlgoAPI_Fuse(Oblika1,Oblika2)
    410411}}}
    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
     415Presek (Common) [[Image(21.png, right)]]  [[BR]][[BR]]
    415416Operacija 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:
    416417{{{
     
    418419presek = BRepAlgoAPI_Common(Oblika1,Oblika2)
    419420}}}
    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
     424Odštevanje (Cut) [[Image(22.png, right)]]  [[BR]][[BR]]
    424425Operacija 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!
    425426{{{
     
    431432
    432433== Geometrijske transformacije ==
    433 Translacija objekta (Transform) [[Image(23.png, right)]]
     434Translacija objekta (Transform) [[Image(23.png, right)]] [[BR]][[BR]]
    434435Za 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:
    435436{{{
     
    443444
    444445
    445 Rotacija objekta (Rotation) [[Image(24.png, right)]]
     446Rotacija objekta (Rotation) [[Image(24.png, right)]]  [[BR]][[BR]]
    446447V 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:
    447448{{{
     
    453454rezultat = BRepBuilderAPI_Transform(Oblika, TransfRot).Shape()
    454455}}}
    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
     459Povečava objekta (Scale) [[Image(24a.png, right)]]  [[BR]][[BR]]
    459460Objektu 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:
    460461{{{