Std: Część

From FreeCAD Documentation
Revision as of 14:14, 10 August 2021 by Kaktus (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Other languages:
Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎polski • ‎português do Brasil • ‎română • ‎русский • ‎한국어

Std Part.svg Std: Część

Lokalizacja w menu
brak
Środowisko pracy
wszystkie
Domyślny skrót
brak
Wprowadzono w wersji
0.17
Zobacz także
Grupa, Zawartość

Opis

Std Part.svg Std: Część (wewnętrznie nazywany App: Część) jest to uniwersalny kontener, który gromadzi wspólnie grupę obiektów, dzięki czemu można je przesuwać razem jako całość w oknie widoku 3D.

Element Std: Część został opracowany jako podstawowy element konstrukcyjny do tworzenia zespołów mechanicznych. W szczególności, ma on za zadanie uporządkować obiekty, które mają kształt części TopoShape, jak Część: Bryły pierwotne, Projekt Części: Zawartość i inne cechy Części. Std: Część dostarcza obiekt Odniesienie położenia z lokalnymi osiami X, Y i Z oraz płaszczyznami standardowymi, które mogą być używane jako odniesienie do położenia obiektów zamkniętych. Ponadto Std: Część mogą być zagnieżdżone wewnątrz innych Std: Część w celu utworzenia dużego zespołu z mniejszych podzespołów.

Chociaż jest on przeznaczony głównie dla brył, Std: Część może być użyty do zarządzania dowolnym obiektem, który posiada właściwość Umiejscowienie, więc może również zawierać cechy siatki, szkice i inne obiekty pochodzące z klas App: GeoFeature.

Nie należy mylić elementu PartDesign Body.svg Projekt Części: Zawartość z częścią Std Part.svg Std: Część. Pierwszym z nich jest określony obiekt używany w środowisku pracy Workbench PartDesign.svg Projekt Części, przeznaczony do modelowania pojedynczej, ciągłej bryły za pomocą funkcji właściwości. Z drugiej strony Std: Część nie jest używana do modelowania, a jedynie do rozmieszczania różnych obiektów w przestrzeni z zamiarem tworzenia złożeń.

Narzędzie Std Part.svg Std: Część nie jest zdefiniowane przez konkretne środowisko pracy, lecz przez system bazowy, a więc znajduje się na pasku narzędzi struktury, który jest dostępny we wszystkich Środowiskach pracy. Aby dowolnie grupować obiekty bez względu na ich położenie, należy użyć funkcji Std Group.svg Std: Group. Obiekt ten nie ma wpływu na rozmieszczenie elementów, które zawiera, w zasadzie jest to tylko folder, który jest używany do utrzymania widoku drzewa w sposób zorganizowany.

Std Part-tree.pngStd Part example.png

Z lewej: elementy wewnątrz Std: Część w widoku drzewa.
Z prawej: obiekty umieszczone w przestrzeni, odnoszące się do pochodzenia (Origin) Std: Część.

Użycie

  1. Naciśnij przycisk Std Part.svg Std: Część. Zostanie utworzona pusta część, która automatycznie stanie się aktywna.
  2. Aby dodać obiekty do nowo utworzonej pozycji Części, zaznacz ją w widoku drzewa, a następnie przeciągnij je i upuść nad Częścią.
  3. Aby usunąć obiekty z części, przeciągnij je poza część, na etykietę dokumentu u góry widoku drzewa.

Uwagi

  • Od wersji programu v0.19, dany obiekt może należeć tylko do jednej pozycji Części.
  • Kliknij dwukrotnie w pozycję Część w widoku drzewa lub otwórz menu kontekstowe (klikając prawym przyciskiem myszy) i wybierz Przełącz aktywność części aby uaktywnić lub dezaktywować wybraną Część. Jeśli aktywna jest inna część, jej aktywność zostanie wyłączona. Aby uzyskać więcej informacji, zobacz akapit status aktywności.

Ograniczenia

Właściwości

Std: Część jest wewnętrznie nazywana App: Part (klasa App::Part), i pochodzi z App: GeoFeature (klasa App::GeoFeature), dlatego też posiada większość właściwości tej ostatniej.

Oprócz właściwości opisanych w App: GeoFeature, klasa App Part posiada pewne właściwości, które pomagają w zarządzaniu informacjami w kontekście zespołu, na przykład: DANETyp, DANEId, DANELicencja, DANELicencjaURL, DANEKolor, oraz DANEGrupa.

Są to właściwości dostępne w edytorze właściwości. Ukryte właściwości można wyświetlić za pomocą polecenia Wyświetl wszystko w menu kontekstowym edytora właściwości.

Dane

Podstawowe

  • DANETyp (String): opis dla obiektu. Domyślnie jest to pusty łańcuch znaków "".
  • DANEId (String): numer identyfikacyjny lub numer części dla obiektu. Domyślnie jest to pusty łańcuch znaków "".
  • DANELicencja (String): pole do określenia licencji dla obiektu. Domyślnie jest to pusty łańcuch znaków "".
  • DANELicencjaURL (String): pole do podania adresu strony internetowej z licencją lub umową dla tego obiektu. Domyślnie jest to pusty łańcuch znaków "".
  • DANEKolor (Color): tupla czterech zmiennoprzecinkowych wartości RGBA (r,g,b,a) do określenia koloru obiektu. Domyślnie jest to (1.0, 1.0, 1.0, 1.0), która jest wyświetlana jako [255,255,255] w bazie 255, white color.
  • DANEUmieszczenie (Placement): ustawienie obiektu w oknie widoku 3D. Umieszczenie jest określone przez punkt (wektor) Baza i Obrót (oś i kąt). Patrz: Umiejscowienie.
    • DANEKąt: kąt obrotu wokół DANEOsi. Domyślnie jest to (zero stopni).
    • DANE: wektor jednostkowy, który określa oś obrotu dla położenia. Każdy komponent jest wartością zmiennoprzecinkową pomiędzy 0 a 1. Jeśli jakaś wartość znajduje się powyżej 1, wektor jest normalizowany tak, że jego wielkość wynosi 1. Domyślnie ustawiono dodatnią oś Z, (0, 0, 1).
    • DANEPozycja: wektor ze współrzędnymi przestrzennymi punktu bazowego. Domyślnie, jest to punkt startowy (0, 0, 0).
  • DANEEtykieta (String): edytowalna przez użytkownika nazwa obiektu, jest to dowolny ciąg znaków w standardzie UTF8.
  • DANEGrupa (LinkList): lista obiektów, których dotyczą odniesienia. Domyślnie jest pusta [].

Dane Właściwości ukryte

  • DANEMateriał (Map): mapa z właściwościami materiałów. Domyślnie jest ona pusta {}.
  • DANEMeta (Map): mapa z dodatkowymi meta informacjami. Domyślnie jest ona pusta {}.
  • DANEUid (UUID): uniwersalny identyfikator (UUID) (128-bitowy numer) obiektu. Numer ten jest przypisywany podczas tworzenia obiektu.
  • DANEEtykieta2 (String): dłuższy, edytowalny przez użytkownika opis tego obiektu. Jest to dowolny ciąg znaków w standardzie UTF8, który może zawierać nowe linie. Domyślnie jest to pusty łańcuch znaków "".
  • DANESilnik wyrażenia (ExpressionEngine): lista wyrażeń. Domyślnie, jest ona pusta [].
  • DANEWidoczność (Bool): parametr określający czy obiekt ma być widoczny, czy też nie.
  • DANEOrigin (Link): the App: Origin obiekt, który jest odniesieniem położenia dla wszystkich elementów wymienionych w DANEGrupie.
  • DANE_ Grupa Dotknięta (Bool): parametr określający czy grupa jest wzruszona, czy też nie.

Widok

App: Część ma tylko pięć podstawowych właściwości App: FeaturePython, i nie ma właściwości ukrytych.

Podstawowe

  • WIDOKTryb wyświetlania (Enumeration): Grupa.
  • WIDOKNa górze po wybraniu (Enumeration): Wyłączone (domyślnie), Włączone, Obiekt, Element.
  • WIDOKStyl wyboru (Enumeration): Kształt (domyślnie), Pole ograniczające. Jeśli wartość opcji jest następująca Kształt, cały kształt (wierzchołki, krawędzie i powierzchnie) zostanie podświetlony w oknie widoku 3D. Jeśli wybrano wartość Pole ograniczające, to tylko ramka ograniczająca zostanie podświetlona.
  • WIDOKPokaż w drzewku (Bool): Jeśli ustawiono wartość true, obiekt pojawia się w widoku drzewa. W przeciwnym razie, jest on określony jako niewidoczny.
  • WIDOKWidoczność (Bool): Jeśli ustawiono wartość true, obiekt pojawia się w oknie widoku 3D. W przeciwnym razie będzie niewidoczny. Domyślnie, właściwość ta, może być włączana i wyłączana, poprzez naciśnięcie klawisza Spacja na klawiaturze.

Koncepcja złożeń

Std: Część ma być podstawowym elementem konstrukcyjnym do tworzenia złożeń. W przeciwieństwie do Projekt części: Zawartość, zespół ma być zbiorem oddzielnych, rozróżnialnych elementów, które są w jakiś sposób połączone w świecie fizycznym, na przykład za pomocą nacisku, śrub lub kleju.

Przykłady, które mogą być częściami:

  • Drewniany stół, który składa się z pojedynczych drewnianych przedmiotów (nóg, blatu), które są łączone za pomocą kleju lub metalowych wkrętów.
  • Łożysko kulkowe, które składa się z wielu stalowych kulek, pierścienia wewnętrznego, koszyka, uszczelki i pierścienia zewnętrznego.
  • Zespół śruby z podkładką i odpowiednią nakrętką.

PartDesign Body contiguous separate.png PartDesign Body contiguous assembly.png

Z lewej: trzy pojedyncze sąsiadujące bryły, z których każda została wymodelowana za pomocą obiektu Projekt Części: Zawartość.
Z prawej: poszczególne bryły złożone razem w Std: Część, aby utworzyć zespół.

Ogólnie rzecz biorąc, podczas importowania pliku STEP do programu, główny zespół i jego podzespoły będą importowane jako kontenery części, a każdy z nich będzie zawierał podstawową funkcjonalność części.

Szczegółowe wyjaśnienia

Status aktywności

Otwarty dokument może zawierać wiele części. Aktywna Część zostanie wyświetlona w widoku drzewa przy zastosowaniu koloru tła określonego w edytorze preferencji przez wartość Aktywny kontener (domyślnie, jasnoniebieski). Etykieta aktywnej części zostanie również wyświetlona pogrubionym tekstem.

Aby uaktywnić lub dezaktywować Część:

  • Kliknij dwukrotnie na jej pozycję w widoku drzewa, lub
  • Otwórz menu kontekstowe (klikając prawym przyciskiem myszy) i wybierz Przełącz aktywność części.

Uwagi:

  • Aktywny status Części opracowano w v0.17 równolegle z aktywnym statusem Projekt części: Zawartość, jednakże od v0.19 status ten nie ma rzeczywistego przeznaczenia dla Części.
  • Nawet gdy część jest aktywna, nowo wytworzone obiekty nie są automatycznie umieszczane w jej wnętrzu. W tym przypadku, po prostu przeciągnij wybrane nowe obiekty i upuść je do żądanej Części.
  • W danym momencie może być aktywna tylko pojedyncza Część.

Std Part active.png

Dokument z dwiema Częściami Std, wśród których aktywna jest druga część.

Odniesienie położenia

Początek układu współrzędnych składa się z trzech standardowych osi (X, Y, Z) oraz trzech standardowych płaszczyzn (XY, XZ i YZ). Szkic i inne obiekty mogą być dołączone do tych elementów w trakcie ich tworzenia.

Part Origin tree.png Part Origin view.png

Z lewej: Początek układu współrzędnych Części w widoku drzewa.
Z prawej: reprezentacja początku układu współrzędnych w oknie widoku 3D.


Uwaga: Początek układu współrzędnych jest obiektem App Origin (klasa App::Origin), podczas gdy osie i płaszczyzny są obiektami odpowiednio typu App::Line oraz App::Plane. Każdy z tych elementów może być ukryty i nieujawniany indywidualnie przy użyciu klawisza spacja. Jest to przydatne przy tworzeniu innych obiektów, aby wybrać właściwe odniesienie.

Uwaga 2: Wszystkie elementy składowe Części są powiązane z jej początkiem, co oznacza, że Część może być przesuwana i obracana w odniesieniu do globalnego układu współrzędnych, bez wpływu na rozmieszczenie jej elementów składowych.

Zarządzanie wyświetlaniem

Parametr wyświetlania Części ma pierwszeństwo określania wyświetlania dowolnego obiektu, który zawiera. Jeśli wyświetlanie Części zostanie ukryte, to obiekty, które zawiera będą również ukryte, nawet jeśli ich indywidualna właściwość WIDOKWidoczność jest ustawiona na true. Jeśli Część jest widoczna, to właściwość każdego obiektu WIDOKWidoczność określa, czy obiekt jest prezentowany na ekranie okna widoku 3D czy nie.

Part Visibility off.png Part Visibility on.png

Parametr widoczności Std Części określa, czy zgrupowane pod nią obiekty są prezentowane w oknie widoku 3D, czy też nie.
Po lewej: Część została ukryta, więc żaden z obiektów nie będzie widoczny w oknie widoku 3D.
Po prawej: Część jest widoczna, więc każdy obiekt kontroluje indywidualnie swoje właściwości w zakresie wyświetlania.

Dziedziczenie

Obiekt Std: Część jest formalnie instancją klasy App::Part, której rodzicem jest podstawowa klasa App GeoFeature (App::GeoFeature), i jest wzbogacona o rozszerzenie Origin.

FreeCAD core objects.svg

Uproszczony schemat relacji między głównymi obiektami w programie. Klasa App::Part jest prostym kontenerem, który ma swoją pozycję w przestrzeni 3D i posiada zdefiniowany punkt początku w układzie współrzędnych (Origin), kontrolujący położenie zgrupowanych pod nim obiektów.

Tworzenie skryptów

Zobacz również: Podstawy tworzenia skryptów FreeCAD, oraz Obiekty tworzone skryptami.

Ogólne informacje na temat dodawania obiektów do dokumentu można znaleźć w Część: właściwość.

Element Std: Part (App Part) jest tworzony przy pomocy metody addObject() dokumentu. Gdy istnieje element Part, inne obiekty mogą być do niego dodane za pomocą metod addObject() lub addObjects().

import FreeCAD as App

doc = App.newDocument()
obj = App.ActiveDocument.addObject("App::Part", "Part")

bod1 = App.ActiveDocument.addObject("PartDesign::Body", "Body")
bod2 = App.ActiveDocument.addObject("Part::Box", "Box")

obj.addObjects([bod1, bod2])
App.ActiveDocument.recompute()

Nie można utworzyć skryptu App::Part. Można jednak dodać zachowanie App::Part do obiektu skryptowego Part::FeaturePython za pomocą następującego kodu:

class MyGroup(object):
    def __init__(self, obj=None):
        self.Object = obj
        if obj:
            self.attach(obj)

    def __getstate__(self):
        return

    def __setstate__(self, _state):
        return

    def attach(self, obj):
        obj.addExtension('App::OriginGroupExtensionPython')
        obj.Origin = FreeCAD.ActiveDocument.addObject('App::Origin', 'Origin')

    def onDocumentRestored(self, obj):
        self.Object = obj

class ViewProviderMyGroup(object):
    def __init__(self, vobj=None):
        if vobj:
            vobj.Proxy = self
            self.attach(vobj)
        else:
            self.ViewObject = None

    def attach(self, vobj):
        vobj.addExtension('Gui::ViewProviderOriginGroupExtensionPython')
        self.ViewObject = vobj

    def __getstate__(self):
        return None

    def __setstate__(self, _state):
        return None

App.ActiveDocument.addObject('Part::FeaturePython', 'Group', group.MyGroup(), group.ViewProviderMyGroup(), True)