Changes between Version 11 and Version 12 of salome_shaper


Ignore:
Timestamp:
Oct 16, 2019, 2:25:00 PM (5 years ago)
Author:
dpenko
Comment:

Improve primitives example, add images. Improve first extrude example, add images.

Legend:

Unmodified
Added
Removed
Modified
  • salome_shaper

    v11 v12  
    88<figure align="center">
    99  <img src="http://trac.lecad.si/vaje/raw-attachment/wiki/salome_shaper/SALOME_SHAPER_empty_case.png" alt="SALOME SHAPER empty case." width="750px">
    10   <figcaption>Začetni prikaz SALOME okolja z aktiviranim SHAPER modulom. Izbor modula je nakazan v zgornjem delu (izbor z "drop-down" menujem). Na levi strani se nahaja "Object Browser", ki na podlagi drevesne strukture prikazuje vsebino našega primera. V sredini je pregledovalno okno za 3D prikaz modela. V spodnjem delu se nahaja Python konzola v katerega se lahko vnesuje Python ukazne vrstice.</figcaption>
     10  <figcaption> Slika: Začetni prikaz SALOME okolja z aktiviranim SHAPER modulom. Izbor modula je nakazan v zgornjem delu (izbor z "drop-down" menujem). Na levi strani se nahaja "Object Browser", ki na podlagi drevesne strukture prikazuje vsebino našega primera. V sredini je pregledovalno okno za 3D prikaz modela. V spodnjem delu se nahaja Python konzola v katerega se lahko vnesuje Python ukazne vrstice.</figcaption>
    1111</figure>
    1212}}}
     
    4444Part_doc = Part.document()
    4545
    46 # Dodamo kocko
     46# Dodamo kocko dimenzij 10x10x10
    4747Box = model.addBox(Part_doc, 10, 10, 10)
    4848}}}
     
    5555  <img src="http://trac.lecad.si/vaje/raw-attachment/wiki/salome_shaper/shaper_example_addBox_objectBrowser.png" alt="shaper_example_addBox_objectBrowser" height="250px">
    5656
    57   <figcaption>Prikaz vnosa kode v SALOME Python konzolo (desno), prikaz pridobljenega modela (v sredini) in prikaz drevesne strukture part-a v t.i. Object Browser-ju (desno).</figcaption>
     57  <figcaption>Slika: Prikaz vnosa kode v SALOME Python konzolo (desno), prikaz pridobljenega modela (v sredini) in prikaz drevesne strukture part-a v t.i. Object Browser-ju (desno).</figcaption>
    5858</figure>
    5959}}}
    6060
    61 Primeri sintakse "Add" ukazov za izdelavo drugih primitivov, ki se jih lahko najde tudi na
    62 [https://docs.salome-platform.org/latest/tui/SHAPER/group__CPPHighAPI.html#ga0f0cb17c988065dfcd41201b56c789fd, tej povezavi].
    63 
    64 V SALOME Python shell vnesemo naslednje ukaze:
    65 
    66 {{{
    67 #!python
    68 
    69 # Točka
    70 Point = model.addPoint(Part_doc, 10, 10, -10)
    71 # Kocka oz. kvader
    72 model.addBox(Part_doc, 10, 10, 10)
    73 # Stožec
    74 model.addCone(Part_doc, 20, 10, 10)
    75 # Valj
    76 model.addCylinder(Part_doc, 10, 10)
    77 # Krogla
    78 model.addSphere(Part_doc, 10)
    79 # Torus
     61Spodaj so prikazani primeri "add" ukazov za dodajanje točk in drugih primitivov, ki se jih lahko najde tudi na
     62[https://docs.salome-platform.org/latest/tui/SHAPER/group__CPPHighAPI.html#ga0f0cb17c988065dfcd41201b56c789fd, tej povezavi]:
     63
     64{{{
     65#!python
     66
     67# Točka s koordinatami x=-50, y=70, z=20
     68Point = model.addPoint(Part_doc, -50, 70, 20)
     69# Kocka oz. kvader z ogliščem v izhodiščni točki T(0,0,0),
     70# dimenzija v X osi = 40, v Y osi = 45, v Z osi = 60
     71model.addBox(Part_doc, 40, 45, 60)
     72# Stožec, z zunanji radij=50, notranji radij=0 (z vrednostjo večje od 0 se difinira prisekan stožec), višina=100
     73model.addCone(Part_doc, 50, 0, 90)
     74# Valj, polmer=60, višina=70
     75model.addCylinder(Part_doc, 60, 70)
     76# Krogla, polmer=60
     77model.addSphere(Part_doc, 60)
     78# Torus, razdalja od sdreišča cevi torusa= , polmer cevi torusa=
    8079model.addTorus(Part_doc, 20, 10)
    8180
    8281}}}
    8382
    84 = Primer: Postopek preprostega izvleka v prostor (Extrude) =
     83{{{
     84#!html
     85<figure align="center">
     86  <img src="http://trac.lecad.si/vaje/raw-attachment/wiki/salome_shaper/SHAPER_primitives_addPoint.png" alt="Alt text" height="260px">
     87  <img src="http://trac.lecad.si/vaje/raw-attachment/wiki/salome_shaper/SHAPER_primitives_addBox.png" alt="Alt text" height="260px">
     88  <img src="http://trac.lecad.si/vaje/raw-attachment/wiki/salome_shaper/SHAPER_primitives_addCone.png" alt="Alt text" height="260px">
     89  <img src="http://trac.lecad.si/vaje/raw-attachment/wiki/salome_shaper/SHAPER_primitives_addCylinder.png" alt="Alt text" height="260px">
     90  <img src="http://trac.lecad.si/vaje/raw-attachment/wiki/salome_shaper/SHAPER_primitives_addSphere.png" alt="Alt text" height="260px">
     91  <img src="http://trac.lecad.si/vaje/raw-attachment/wiki/salome_shaper/SHAPER_primitives_addTorus.png" alt="Alt text" height="260px">
     92
     93  <figcaption>Slika: Od leve proti desni: Točka (prikazana s "+"), kvader, stožec, valj, krogla in torus v SHAPERju. </figcaption>
     94</figure>
     95}}}
     96
     97= Primer: Izdelava izvleka v prostor (Extrude) =
    8598
    8699V SALOME Python konzolo vnesemo naslednje ukaze:
    87 
    88 
    89 = Primer: Postopek preprostega izvleka v prostor (Extrude) z uporabo linij =
    90100
    91101{{{
     
    103113mypart = model.addPart(mypartset).document()
    104114
    105 # Naredimo objekt - skico za našo osnovo kvadra
    106 mybase = model.addSketch(mypart, model.defaultPlane("XOY"))
     115# Dodamo objekt - skico za našo osnovo kvadra
     116mySketch = model.addSketch(mypart, model.defaultPlane("XOY"))
    107117
    108118# Določimo točke
     
    112122p4 = geom.Pnt2d(25, 0)
    113123
    114 # Iz točk tvorimo sestavljeno linijo - poligon
    115 line = model.addPolygon(mybase, p1, p2, p3, p4) # Line je seznam oz. niz štirih linij
    116 
    117 # Izpis točk, ki sestavljajo vsako izmed linij
    118 for i in range(len(line)):
    119     l = line[i]
     124# Izdelava robov iz točk na podlagi točk
     125lines = model.addPolygon(mySketch, p1, p2, p3, p4) # "lines" je seznam oz. niz štirih robov
     126
     127# Prikaži dopolnjen model - prikaži robove
     128model.do()
     129
     130# Dodatno: Izpis točk, ki sestavljajo vsako izmed linij
     131for i in range(len(lines)):
     132    l = lines[i]
    120133    print("Linija #" + str(i) + ":")
    121134    print("Začetna točka: X:", str(l.startPoint().x()), ", Y: ", str(l.startPoint().y()))
    122135    print("Končna točka: X:", str(l.endPoint().x()), ", Y: ", str(l.endPoint().y()))
    123136
    124 # Prikaži dopolnjen model
    125 model.do()
    126 
    127137# Izdelava izvleka
    128 mybox = model.addExtrusion(mypart, mybase.selectFace(), 50)
    129 
    130 # Prikaži dopolnjen model
    131 model.do()
    132 }}}
     138mybox = model.addExtrusion(mypart, mySketch.selectFace(), 50)
     139
     140# Prikaži dopolnjen model
     141model.do()
     142}}}
     143
     144{{{
     145#!html
     146<figure align="center">
     147  <img src="http://trac.lecad.si/vaje/raw-attachment/wiki/salome_shaper/SHAPER_example_extrude_1.png" alt="Alt text" height="260px">
     148  <img src="http://trac.lecad.si/vaje/raw-attachment/wiki/salome_shaper/SHAPER_example_extrude_2.png" alt="Alt text" height="260px">
     149
     150
     151  <figcaption>Slika: Prikaz določenih robov spodnje ploskve in izvlek v prostor. </figcaption>
     152</figure>
     153}}}
     154
     155= Primer: Izdelava izvleka v prostor (Extrude) z dodajanjem robov v skici=
    133156
    134157V SALOME Python konzolo vnesemo naslednje ukaze: