Dynamo
Primer for v2.0
Deutsch
Deutsch
  • Info
  • Einführung
    • Was ist Dynamo und wie funktioniert die Anwendung?
    • Primer-Leitfaden, Dynamo-Community und -Plattform
  • Setup für Dynamo
  • Benutzeroberfläche
    • Arbeitsbereich
    • Bibliothek
  • Blöcke und Drähte
  • Wichtige Blöcke und Konzepte
    • Index der Blöcke
    • Geometrie für computergestützte Konstruktion
      • Geometrie - Überblick
      • Vektor, Ebene und Koordinatensystem
      • Punkte
      • Kurven
      • Oberflächen
      • Volumenkörper
      • Netze
    • Bausteine von Programmen
      • Daten
      • Math
      • Logik
      • Zeichenfolgen
      • Farbe
    • Entwerfen mit Listen
      • Was ist eine Liste?
      • Arbeiten mit Listen
      • Listen von Listen
      • n-dimensionale Listen
    • Wörterbücher in Dynamo
      • Was ist ein Wörterbuch?
      • Wörterbuch-Blöcke
      • Wörterbücher in Codeblöcken
      • Revit-Anwendungsfälle
  • Benutzerdefinierte Blöcke und Pakete
    • Benutzerdefinierte Blöcke
      • Benutzerdefinierte Blöcke - Einführung
      • Erstellen eines benutzerdefinierten Blocks
      • Publizieren in der Bibliothek
    • Pakete
      • Pakete - Einführung
      • Fallstudie zu Paketen: Mesh Toolkit
      • Entwickeln von Paketen
      • Publizieren von Paketen
      • Zerotouch-Import
  • Dynamo für Revit
    • Verbindung zu Revit
    • Auswählen
    • Bearbeiten
    • Erstellen
    • Anpassen
    • Dokumentation
  • Dynamo for Civil 3D
    • Die Civil 3D-Verbindung
    • Erste Schritte
    • Blockbibliothek
    • Beispielarbeitsabläufe
      • Straßen
        • Lichtmastenplatzierung
      • Land
        • Platzieren von Hausanschlüssen
      • Versorgung
        • Umbenennen von Schächten/Bauwerken
      • Schiene
        • Lichtraumprofil
      • Vermessung
        • Punktgruppenverwaltung
    • Fortgeschrittene Themen
      • Objektbindung
      • Python und Civil 3D
    • Dynamo Player
    • Nützliche Pakete
    • Ressourcen
  • Dynamo in Forma Beta
    • Einrichten von Dynamo Player in Forma
    • Hinzufügen und Freigeben von Diagrammen in Dynamo Player
    • Ausführen von Diagrammen in Dynamo Player
    • Unterschiede der Dynamo-Computing-Services bei Dynamo Desktop
  • Codierung in Dynamo
    • Codeblöcke und DesignScript
      • Was ist ein Codeblock?
      • DesignScript-Syntax
      • Kurzschreibweisen
      • Funktionen
    • Geometrie mit DesignScript
      • DesignScript-Geometriegrundlagen
      • Geometrische Grundkörper
      • Vektormathematik
      • Kurven: Interpolierte Punkte und Steuerpunkte
      • Verschiebung, Drehung und andere Transformationen
      • Oberflächen: Interpolation, Steuerpunkte, Erhebung, Drehung
      • Geometrische Parametrisierung
      • Schnittpunkt und Stutzen
      • Geometrische boolesche Operationen
      • Python-Punkt-Generatoren
    • Python
      • Python-Blöcke
      • Python und Revit
      • Einrichten einer eigenen Python-Vorlage
    • Änderungen der Sprache
  • Optimale Verfahren
    • Vorgehensweisen für Diagramme
    • Vorgehensweisen zur Skripterstellung
    • Referenz für die Skripterstellung
    • Verwalten Ihres Programms
    • Effizientes Arbeiten mit großen Datensätzen in Dynamo
  • Beispielarbeitsabläufe
    • Erste Schritte - Arbeitsabläufe
      • Parametrische Vase
      • Attraktorpunkte
    • Konzeptindex
  • Developer Primer
    • Erstellen von Dynamo aus Quelldateien
      • Erstellen von DynamoRevit aus Quelldateien
      • Verwalten und Aktualisieren von Abhängigkeiten in Dynamo
    • Entwickeln für Dynamo
      • Erste Schritte
      • Zero-Touch-Fallstudie - Rasterblock
      • Ausführen von Python-Skripts in Zero-Touch-Blöcken (C#)
      • Weitere Schritte mit Zero-Touch
      • Erweiterte Anpassung von Dynamo-Blöcken
      • Verwenden von COM-Typen (Interop-Typen) in Dynamo-Paketen
      • NodeModel-Fallstudie – Angepasste Benutzeroberfläche
      • Aktualisieren der Pakete und Dynamo-Bibliotheken für Dynamo 2.x
      • Aktualisieren der Pakete und Dynamo-Bibliotheken für Dynamo 3.x
      • Erweiterungen
      • Definieren einer benutzerdefinierten Paketorganisation für Dynamo 2.0+
      • Dynamo-Befehlszeilenschnittstelle
      • Dynamo-Integration
      • Entwickeln für Dynamo for Revit
      • Publizieren eines Pakets
      • Erstellen eines Pakets in Visual Studio
      • Erweiterungen als Pakete
    • Pull-Anforderungen
    • Erwartungen beim Testen
    • Beispiele
  • Anhang
    • Häufig gestellte Fragen
    • Visuelle Programmierung und Dynamo
    • Ressourcen
    • Versionshinweise
    • Nützliche Pakete
    • Beispieldateien
    • Host-Integrationskarte
    • Herunterladen der PDF-Datei
    • Dynamo-Tastaturkürzel
Powered by GitBook
On this page
  • Intersect
  • Trim
Edit on GitHub
Export as PDF
  1. Codierung in Dynamo
  2. Geometrie mit DesignScript

Schnittpunkt und Stutzen

PreviousGeometrische ParametrisierungNextGeometrische boolesche Operationen

Last updated 2 years ago

Viele der bisherigen Beispiele bezogen sich auf die Konstruktion einer höherdimensionalen Geometrie aus niedrigerdimensionalen Objekten. Mit Intersection-Methoden können diese höherdimensionalen Geometrien Objekte mit niedrigerer Dimension generieren, während die Befehle Trim und SelectTrim es ermöglichen, geometrische Formen mit Skripts stark zu ändern, nachdem sie erstellt wurden.

Die Methode Intersect ist für alle Geometrieobjekte in Dynamo definiert. Das bedeutet, dass theoretisch jedes Geometrieobjekt mit einem beliebigen anderen geschnitten werden kann. Natürlich sind einige Überschneidungen nicht von Bedeutung, wie z. B. Schnittpunkte von Punkten, da das resultierende Objekt immer der Eingabepunkt selbst ist. Andere mögliche Kombinationen von Überschneidungen zwischen Objekten sind in der folgenden Tabelle beschrieben. Die folgende Tabelle zeigt die Ergebnisse verschiedener Überschneidungsoperationen:

Intersect

Mit:

Oberfläche

Kurve

Ebene

Volumenkörper

Oberfläche

Kurve

Punkt

Punkt, Kurve

Oberfläche

Kurve

Punkt

Punkt

Punkt

Kurve

Ebene

Kurve

Punkt

Kurve

Kurve

Volumenkörper

Oberfläche

Kurve

Kurve

Volumenkörper

Das folgende sehr einfache Beispiel zeigt die Überschneidung einer Ebene mit einer NurbsSurface. Die Überschneidung erzeugt ein NurbsCurve-Array, das wie jede andere NurbsCurve verwendet werden kann.

// python_points_5 is a set of Points generated with
// a Python script found in Chapter 12, Section 10

surf = NurbsSurface.ByPoints(python_points_5, 3, 3);

WCS = CoordinateSystem.Identity();

pl = Plane.ByOriginNormal(WCS.Origin.Translate(0, 0,
    0.5), WCS.ZAxis);

// intersect surface, generating three closed curves
crvs = surf.Intersect(pl);

crvs_moved = crvs.Translate(0, 0, 10);

Die Methode Trim ähnelt der Methode Intersect insofern, dass sie ebenfalls für nahezu jedes Geometrieobjekt definiert ist. Es bestehen jedoch für Trim weitaus mehr Einschränkungen als für Intersect.

Trim

Verwendung: Punkt

Kurve

Ebene

Oberfläche

Volumenkörper

Auf: Kurve

Ja

Nein

Nein

Nein

No

Polygon

-

Nein

Ja

Nein

No

Oberfläche

-

Ja

Ja

Ja

Ja

Volumenkörper

-

-

Ja

Ja

Ja

Erwähnenswert bei den Trim-Methoden ist die Anforderung eines Select-Punkts, der bestimmt, welche Geometrie verworfen und welche Teile beibehalten werden sollen. Dynamo sucht und verwirft die gestutzte Geometrie, die dem ausgewählten Punkt am nächsten liegt.

// python_points_5 is a set of Points generated with
// a Python script found in Chapter 12, Section 10

surf = NurbsSurface.ByPoints(python_points_5, 3, 3);

tool_pts = Point.ByCoordinates((-10..20..10)<1>,
    (-10..20..10)<2>, 1);

tool = NurbsSurface.ByPoints(tool_pts);

pick_point = Point.ByCoordinates(8, 1, 3);

result = surf.Trim(tool, pick_point);