Part: Offset/Decalj 2D

From FreeCAD Documentation
Revision as of 20:30, 1 December 2020 by FuzzyBot (talk | contribs) (Updating to match new version of source page)

Part:Decalj 2D

poziția meniului
Componentă → 2D Offset
Ateliere
Part
scurtătură
nici unul
Prezentat în versiune
0.17
A se vedea, de asemenea,
Part Offset 3D, Part Thickness, Draft Offset

Descriere

Part 2D Offset construiește un filament/contur, paralel cu firul original, la o anumită distanță de acesta. Sau mărește/micșorează o fațetă plană, în mod similar.

Filamentul/Fațete trebuie să fie în același plan.Pot exista mai multe filamente într-un singur obiect, nu neapărat coplanar.

Cum se folosește

  1. Selectați un obiect pentru decalaj/offset
  2. Apăsați butonul Offset2D.
  3. Definiți offset în Task Panel.
  4. Apăsați OK.

Se creează un obiect parametric de offset 2D. Obiectele originale sunt comutate în modul de afișare a cadrului wireframe.

Proprietăți

  • DateSource: Link to original shape
  • DateValue The distance to enlarge the wire/face by. If negative, the wire/face is shrunk instead.
  • DateMode ("Pipe" or "Skin"): sets how non-closed wires are processed. If "Pipe", the wire is outlined as if it was an extremely thin closed contour. If "Skin", an open wire is created.
  • DateJoin ("Arc", "Tangent", "Intersection"): sets the behavior around kinks. If "Arc", offset segments are connected with an arc of circle, centered at the vertex. "Tangent" is unsupported on OCC7.0.0. "Intersection": offset segments are extended till they intersect.
  • DateIntersection ("false", "true"): sets if multiple wires are treated collectively or independently. If "false", wires are offset independently, intersections between resulting wires are ignored. If "true", the wires are offset in collective manner.
Numai firele din cadrul unui compus sunt cuplate. De exemplu, dacă structura este asemănătoare compusului (wire1, wire2, compound (wire3, wire4)), wire1 și wire2 vor fi tratate colectiv, dar independent de wire3 și wire4. De asemenea, firele 3 și firele 4 sunt tratate colectiv, dar independent de fir1 + fir2.
De asemenea, în modul colectiv, direcțiile firelor sunt importante și influențează direcția de decalaj. Acest lucru este în strânsă legătură cu modul în care sunt tratate găurile în fațete.
Filamentele tratate colectiv trebuie să fie coplanare. Filamentele fiind decalate/offset independent nu trebuie să fie coplanare.
  • DateFill ("false", "true"): dacă este "true", spațiul dintre filament/fațetă original(ă) și offset este umplut cu o fațetă.

Probleme cunoscute

  • Majoritatea modurilor non-implicite vor funcționa numai cu OCC 7.0.0 sau o versiune ulterioară.
  • Utilizarea instrumentului poate provoca caderea FreeCAD (vezi punctul următor). Pe Windows, aceste accidente sunt convertite în excepții și, în general, nu determină închiderea FreeCAD; pe alte sisteme de operare nu este cazul. Deci, este recomandat să salvați proiectul înainte de a încerca să utilizați instrumentul.
  • Lărgirea fețelor cu găuri circulare cu o cantitate suficient de mare pentru a provoca gauri de închidere, apare un accident (OCC 7.0.0). Problema pare să fie specifică cercurilor; alte forme par să se închidă în mod corespunzător.
  • când se compensează cercuri care au poziționare diferită de zero, rezultatul este plasat greșit. (OCC 7.0.0)
  • când se compensează cercurile, uneori sunt compensate în direcție neașteptată (de exemplu spre interior în loc de exterior). (OCC 7.0.0)
  • Fill="true" nu funcționează când compensați colectiv filamentele deschise în modul "Skin"
  • "Tangent" modul de conectare nu funcționează (OCC 7.0.0)
  • Filamentele decalajul/Offset din segmentul cu o singură linie nu sunt acceptate (deoarece segmentul de linie nu definește un plan). Segmentele de linie unice nu pot participa la decalajul/offset colectivă.

Scrip-Programare

Instrumentul poate fi utilizat în macros și din consola python utilizând următoarea funcție:

f = App.ActiveDocument.addObject("Part::Offset2D", "Offset2D")
f.Source =  #some object
f.Value = 10.0

2D offset este, de asemenea, disponibil ca o metodă de Part.Shape. Exemplu:

import Part
circle = Part.Circle().toShape()
enlarged_circle = circle.makeOffset2D(10.0)
Part.show(circle)
Part.show(enlarged_circle)
# makeOffset2D(offset, join = 0, fill = False, openResult = false, intersection = false)
# 
# * offset: distance to expand the shape by. 
# 
# * join: method of offsetting non-tangent joints. 0 = arcs, 1 = tangent, 2 =
# intersection
# 
# * fill: if true, the output is a face filling the space covered by offset. If
# false, the output is a wire/face.
# 
# * openResult: True for "Skin" mode; False for Pipe mode. 
# 
# * intersection: collective offset
# 
# Returns: result of offsetting (wire or face or compound of those). Compounding
# structure follows that of source shape.