Std: Część

From FreeCAD Documentation
Revision as of 11:17, 17 October 2020 by Kaktus (talk | contribs)

Std: Part

Lokalizacja w menu
brak
Środowisko pracy
wszystkie
Domyślny skrót
brak
Wprowadzono w wersji
0.17
Zobacz także
Std: Group, PartDesign: Bryła

Opis

Std: Part (wewnętrznie nazywany App: Part) 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: Part 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 Part: Bryły pierwotne, PartDesign: Bodies i inne cechy Part. Std: Part dostarcza obiekt Origin 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: Parts mogą być zagnieżdżone wewnątrz innych Std: Parts w celu utworzenia dużego zespołu z mniejszych podzespołów.

Chociaż jest on przeznaczony głównie dla brył, Std: Part może być użyty do zarządzania dowolnym obiektem, który posiada właściwość Umieszczania, 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 z częścią Std: Part. Pierwszym z nich jest określony obiekt używany w Środowisku pracy PartDesign, przeznaczony do modelowania pojedynczej, ciągłej bryły za pomocą funkcji PartDesign. Z drugiej strony Std: Part 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 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. 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.

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

Użycie

  1. Naciśnij przycisk Std: Part. 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

  • At this time, Draft Snap methods do not work on selected Part containers nor on the objects inside of them.
  • A Part has no topological shape, therefore 3D operations like Part Boolean cannot be used on a Part itself. For example, you cannot select two Parts, and perform a Part Union or Part Cut with them.

Właściwości

A Std Part is internally called App Part (App::Part class), and is derived from an App GeoFeature (App::GeoFeature class), therefore it shares most of the latter's properties.

In addition to the properties described in App GeoFeature, the App Part class has some properties that help it manage information in the context of an assembly, for example, DANEType, DANEId, DANELicense, DANELicenseURL, DANEColor, and DANEGroup.

These are the properties available in the property editor. Hidden properties can be shown by using the Show all command in the context menu of the property editor.

Dane

Podstawowe

  • DANEType (String): a description for this object. By default, it is an empty string "".
  • DANEId (String): an identification or part number for this object. By default, it is an empty string "".
  • DANELicense (String): a field to specify the license for this object. By default, it is an empty string "".
  • DANELicenseURL (String): a field to specify the web address to the license or contract for this object. By default, it is an empty string "".
  • DANEColor (Color): a tuple of four floating point RGBA values (r,g,b,a) to define the color of the object; by default it is (1.0, 1.0, 1.0, 1.0), which is displayed as [255,255,255] on base 255, white color.
  • DANEPlacement (Placement): the position of the object in the 3D view. The placement is defined by a Base point (vector), and a Rotation (axis and angle). See Placement.
    • DANEAngle: the angle of rotation around the DANEAxis. By default, it is (zero degrees).
    • DANEAxis: the unit vector that defines the axis of rotation for the placement. Each component is a floating point value between 0 and 1. If any value is above 1, the vector is normalized so that the magnitude of the vector is 1. By default, it is the positive Z axis, (0, 0, 1).
    • DANEPosition: a vector with the 3D coordinates of the base point. By default, it is the origin (0, 0, 0).
  • DANELabel (String): the user editable name of this object, it is an arbitrary UTF8 string.
  • DANEGroup (LinkList): a list of referenced objects. By default, it is empty [].

Hidden properties Data

  • DANEMaterial (Map): map with material properties. By default, it is empty {}.
  • DANEMeta (Map): map with additional meta information. By default, it is empty {}.
  • DANEUid (UUID): the universally unique identifier (UUID) (128-bit number) of the object. This is assigned at creation time.
  • DANELabel2 (String): a longer, user editable description of this object, it is an arbitrary UTF8 string that may include newlines. By default, it is an empty string "".
  • DANEExpression Engine (ExpressionEngine): a list of expressions. By default, it is empty [].
  • DANEVisibility (Bool): whether to display the object or not.
  • DANEOrigin (Link): the App Origin object that is the positional reference for all elements listed in DANEGroup.
  • DANE_ Group Touched (Bool): whether the group is touched or not.

Widok

The App Part only has the five properties of the basic App FeaturePython, and it does not have hidden properties.

Podstawowe

  • WIDOKDisplay Mode (Enumeration): Group.
  • WIDOKOn Top When Selected (Enumeration): Disabled (default), Enabled, Object, Element.
  • WIDOKSelection Style (Enumeration): Shape (default), BoundBox. If the option is Shape, the entire shape (vertices, edges, and faces) will be highlighted in the 3D view; if it is BoundBox only the bounding box will be highlighted.
  • WIDOKShow In Tree (Bool): if it is true, the object appears in the tree view. Otherwise, it is set as invisible.
  • WIDOKVisibility (Bool): if it is true, the object appears in the 3D view; otherwise it is invisible. By default this property can be toggled on and off by pressing the Space bar in the keyboard.

Assembly concept

The Std Part is intended to be the basic building block to create assemblies. Unlike a PartDesign Body, an assembly is meant to be a collection of separate, distinguishable elements which are connected in some way in the physical world, for example, through pressure, screws, or glue.

Examples that could be Parts:

  • A wooden table that consists of individual wooden pieces (legs, top), which are put together by glue or metal screws.
  • A ball bearing that is composed of multiple steel balls, an inner ring, a retainer, a seal, and an outer ring.
  • An assembly of a screw with a washer, and a matching nut.

Left: three individual contiguous solids, each of them modelled by a PartDesign Body. Right: the individual Bodies put together inside a Std Part to create an assembly.

In general terms, when importing a STEP file into the program, the main assembly and its sub-assemblies will be imported as Part containers, each of them containing a simple Part Feature.

Detailed explanation

=Status aktywności

An open document can contain multiple Parts. An active Part will be displayed in the tree view with the background color specified by the Active container value in the preferences editor (by default, light blue). An active part will also be shown in bold text.

To activate or de-activate a Part:

  • Double click on it on the tree view, or
  • Open the context menu (right click) and select Toggle active part.

Notes:

  • The active status of Parts was developed in v0.17 in parallel with the active status of PartDesign Bodies; however, as of v0.19 this status does not serve a real purpose for Parts.
  • Even when a Part is active, newly created objects are not placed inside of it automatically. In this case, simply drag these new objects, and drop them onto the desired Part.
  • Only a single Part can be active at a time.

Document with two Std Parts, of which the second one is active.

Origin

The Origin consists of the three standard axes (X, Y, Z) and three standard planes (XY, XZ and YZ). Sketches and other objects can be attached to these elements when creating them.

Left: Part Origin in the tree view. Right: representation of the Origin elements in the 3D view.

Note: the Origin is an App Origin object (App::Origin class), while the axes and planes are objects of type App::Line and App::Plane respectively. Each of these elements can be hidden and unhidden individually with the Space bar; this is useful to choose the correct reference when creating other objects.

Note 2: all elements inside the Part are referenced to the Part's Origin which means that the Part can be moved and rotated in reference to the global coordinate system without affecting the placement of the elements inside.

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.

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.

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 skryptowe.

Ogólne informacje na temat dodawania obiektów do dokumentu można znaleźć w Part: 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()

Element Part jest kontenerem dla innych obiektów, więc nie ma własnego Kształtu (Part TopoShape). Jednak w wyrażeniach lub w Środowisku arkusza kalkulacyjnego przydatne jest uzyskanie złożonego kształtu wszystkich obiektów znajdujących się wewnątrz Part. Można to osiągnąć za pomocą pseudo-kształtu _shape, który może być następnie użyty do wyodrębnienia innych atrybutów.

=Part._shape.Edges[0].Length