Stap 4: Python Script - deel 2
In deze stap zullen we schrijven python code die een 3D-model van greenhouse in Fusion 360 bouwt. We doen dit met behulp van Fusion 360's API, waardoor we naar te schrijven coderegels die overeenkomen met de activiteiten die wij in directe modellering kennen.
Als u Fusion voor het bouwen van een eenvoudige vorm, is de eerste stap meestal te trekken uit een 2D schets van een profiel dat wij willen extruderen, en vervolgens het extruderen van het. Voor de serre, zullen we ook het lichaam om te maken een gelijke wanddikte aan alle zijden shell. Het volgende blok van code zal deze bewerkingen met lijnen van code uitvoeren.
## Deze lijnen setup de Fusion-API
app = adsk.core.Application.get()
UI = app.userInterface
### SCHETS
# Maak een nieuwe schets op het xy-vlak.
schetsen = rootComp.sketches
xyPlane = rootComp.xYConstructionPlane
schets = sketches.add(xyPlane)
# Vijf aaneengesloten lijnen tekenen.
lijnen = sketch.sketchCurves.sketchLines
Line1 = lines.addByTwoPoints (adsk.core.Point3D.create (0, 0, 0), adsk.core.Point3D.create (breedte, 0, 0))
line2 = lines.addByTwoPoints (line1.endSketchPoint, adsk.core.Point3D.create (breedte, wallHeight, 0))
Line3 = lines.addByTwoPoints (line2.endSketchPoint, adsk.core.Point3D.create (breedte/2, roofHeight, 0))
Line4 = lines.addByTwoPoints (line3.endSketchPoint, adsk.core.Point3D.create (0, wallHeight, 0))
Line5 = lines.addByTwoPoints (line4.endSketchPoint, adsk.core.Point3D.create (0, 0, 0))
### EXTRUDEREN
# Haal het profiel bepaald door de schets
Prof = sketch.profiles.item(0)
# Maak een extrusie-input
gesteenten = rootComp.features.extrudeFeatures
extInput = extrudes.createInput (prof, adsk.fusion.FeatureOperations.NewBodyFeatureOperation)
# extInput definieert de parameters voor de diepte
# Definieer dat de omvang is de omvang van een afstand van lengte
afstand = adsk.core.ValueInput.createByReal(length)
# Stel de afstand in hoeverre eenzijdig
extInput.setDistanceExtent (False, afstand)
# Stel de diepte als een solide
extInput.isSolid = True
# Maak de extrusie
ext = extrudes.add(extInput)
# ext is de geëxtrudeerde functie
### SHELL
entiteiten = adsk.core.ObjectCollection.create()
Entities.Add(ext.Bodies.item(0))
# Pak het lichaam te doen van een carrosserie
functies = rootComp.features
shellFeats = features.shellFeatures
isTangentChain = False
shellFeatureInput = shellFeats.createInput (entiteiten, isTangentChain)
dikte = adsk.core.ValueInput.createByReal(insulation)
shellFeatureInput.insideThickness = dikte shellFeats.add(shellFeatureInput)
Sla het bestand op, ga terug naar Fusion, het script in de Scripts en invoegtoepassingen zoeken knal opwaarts venster, en klik op uitvoeren. Moet u uw serre verschijnen! Gebruik de sectie analysefunctie onder de inspecteren drop down naar aan segment uw model doormidden zodat kunt u de dimensie van de wanddikte.