Idea Statica
  • Stahl
  • Beton
  • BIM & Workflows
  • Support & Lernen
  • Preise
  • Unternehmen
  • Übersicht Stahl
  • Verbindungsbemessung
  • Member - Stahlbauteile
  • Parametrisches Design
  • Fallstudien Stahl
  • Übersicht Beton
  • Wand- & Detailbemessung
  • Bemessungsverankerung
  • Bauteile & Querschnitte
  • Beton-Fallstudien
  • Übersicht BIM
  • Unterstützte Schnittstellen
  • Checkbot
  • Viewer
  • Kompatible Versionen
  • APIs
  • Support Zentrum
  • Online-Schulungen
  • Blog
  • Campus E-learning Kurs
  • Downloads & Lizenzierung
  • Pläne
  • Kostenloses Community-Tool
  • Enterprise Kunden
  • Studenten und Universitäten
  • Wie viel werden Sie einsparen?
  • Über uns
  • Kontakt
  • Forschung & Entwicklung
  • Vertriebspartner
  • Unsere Kunden
  • Stahl
    Übersicht StahlVerbindungsbemessungMember - StahlbauteileParametrisches DesignFallstudien Stahl
  • Beton
    Übersicht BetonWand- & DetailbemessungBemessungsverankerungBauteile & QuerschnitteBeton-Fallstudien
  • BIM & Workflows
    Übersicht BIMUnterstützte SchnittstellenCheckbotViewerKompatible VersionenAPIs
  • Support & Lernen
    Support ZentrumOnline-SchulungenBlogCampus E-learning KursDownloads & Lizenzierung
  • Preise
    PläneKostenloses Community-ToolEnterprise KundenStudenten und UniversitätenWie viel werden Sie einsparen?
  • Unternehmen
    Über unsKontaktForschung & EntwicklungVertriebspartnerUnsere Kunden
14-Tage-Testversion
14-Tage-Testversion
  • Stahl
  • Beton
  • BIM & Workflows
  • Support & Lernen
  • Preise
  • Unternehmen

Abonnieren Sie unseren Newsletter

Unternehmen

  • Über uns
  • Partnerschaften
  • Karriere
  • Patent

Ressourcen

  • Kundenprojekte
  • Fallstudien
  • Connection Library
  • Verifizierungsberichte

Rechtliches

  • EULA
  • Datenschutz
  • EULA - IDEA StatiCa Viewer
  • Lizenzierung

Hilfe

  • Kontakt
  • Angebot anfordern
  • Wiederverkäufer
  • Downloads
FacebookInstagramLinkedInYouTube

© IDEA StatiCa 2009-2026

Weltweit vertraut und genutzt von Ingenieuren, Herstellern & Beratern.

Support CenterTutorialsErste Schritte mit der API – Vorlage importieren und Berechnung starten 03
Erste Schritte mit der API – Vorlage importieren und Berechnung starten 03
SteelConnection designTutorialsConnectionIDEA Open Model (API)

Erste Schritte mit der API – Vorlage importieren und Berechnung starten 03

Dieser Artikel ist auch verfügbar in
ENCZDEESFRITPTNLHUROKRPLTHTRVIZH

In diesem Tutorial erfahren Sie, wie Sie eine Vorlage importieren, Standardeinstellungen ändern und Ergebnisse zusammen mit Kosten abrufen.

Erste Schritte

Wir empfehlen, das Tutorial Erste Schritte mit der API – Grundlagen 01 durchzuarbeiten, das Ihnen die API und die Einrichtung der Umgebung erklärt.

Connection-Datei 

Dieses Beispiel basiert auf Dateien, die im Tutorial Erste Schritte mit der API – Batch-Import von Kombinationen 02 erstellt wurden. 

Bitte laden Sie die Dateien tutorial 02 with loads.ideaCon und tutorial 02.contemp auf Ihren PC herunter.

Python-Client

Führen Sie erneut die "IdeaStatiCa.ConnectionRestApi.exe" in CMD im entsprechenden IDEA StatiCa-Ordner aus und öffnen Sie das IDE-Werkzeug Ihrer Wahl.

  • Erstellen Sie eine neue Datei und importieren Sie die Pakete, die die Verwendung der Berechnung und die Verknüpfung mit der Localhost-URL ermöglichen. 

Quellcode:

## Import of API package
import ideastatica_connection_api
from ideastatica_connection_api.models.base_template_conversion import BaseTemplateConversion
from ideastatica_connection_api.models.con_mprl_element import ConMprlElement
from ideastatica_connection_api.models.con_operation_common_properties import ConOperationCommonProperties

#Import packages for visualisation
import pandas as pd

## Link with baseUrl
import ideastatica_connection_api.connection_api_service_attacher as connection_api_service_attacher

  • Konfigurieren Sie das Logging über die Variable "baseUrl", die Ihren Localhost aufruft. Im zweiten Schritt verknüpfen Sie den absoluten Pfad Ihrer IDEA StatiCa Connection-Datei.

## Configure logging
baseUrl = "http://localhost:5000"

## Absolute path into folder with your python script and connection module
project_file_path = r"C:\Users\AlexanderSzotkowski\Documents\IDEA\API\Tutorial 03\tutorial 02 with loads.ideaCon"
print("Opening project ",project_file_path)

  • Verknüpfen Sie den Client mit einem bereits laufenden Dienst. Verwenden Sie den try/except-Block – da der try-Block einen Fehler auslöst, wird der except-Block ausgeführt. In der ersten Phase muss das Projekt geöffnet und die Projekt-ID Ihres Projekts ermittelt werden, die für jedes IDEA StatiCa-Projekt eindeutig ist. Anschließend benötigen wir alle Verbindungen, die in unserer Datei gespeichert sind, da wir die Vorlage nur auf die erste anwenden möchten. Als nächsten Schritt können wir die Standard-Zuordnungsvorlagendatei einlesen und eine weitere Schraubengarnitur (M20 8.8) zur MPRL-Datenbank hinzufügen.

# Create a client attached to an already running service
with connection_api_service_attacher.ConnectionApiServiceAttacher(baseUrl).create_api_client() as api_client:
    try:
        # Open project
        uploadRes = api_client.project.open_project_from_filepath(project_file_path)
        activeProjectId = api_client.project.active_project_id      
        # Get list of all connections in the project
        connections_in_project = api_client.connection.get_connections(activeProjectId)

        # first connection in the project
        connection1 = connections_in_project[0]      

        # ConTemplateMappingGetParam | Data of the template to get default mapping (optional)
      templateParam =  ideastatica_connection_api.ConTemplateMappingGetParam() 

        #template_file_name
        template_file_name = r"C:\Users\AlexanderSzotkowski\Documents\IDEA\API\Tutorial 03\tutorial 02.contemp"        

        with open(template_file_name, 'r', encoding='utf-16') as file:
            templateParam.template = file.read()

        # get the default mapping for the selected template and connection  
        default_mapping = api_client.template.get_default_template_mapping(api_client.project.active_project_id, connection1.id, templateParam)
        print("Default mapping: ",default_mapping)        

        #add new bolt assembly to the MPRL database
       mprlElement = ConMprlElement()
        print(mprlElement)
        mprlElement.mprl_name = "M20 8.8"
        api_client.material.add_bolt_assembly(activeProjectId, mprlElement)
        print("New bolt assembly added", mprlElement.mprl_name)
        boltsInProject = api_client.material.get_bolt_assemblies(activeProjectId) 

  • Wenn wir die neue Schraubengarnitur direkt der Operation Platte an Platte zuweisen möchten, müssen wir den Befehl BaseTemplateConversion() ausführen und ihn zur Zuordnungsvorlage hinzufügen.

       # add new bolt assembly to mapping template       
      boltConversion = BaseTemplateConversion()
       boltConversion.original_value = 'M16 8.8'
       boltConversion.original_template_id = '1'
       boltConversion.new_value =  'M20 8.8'
       boltConversion.description = 'Bolt Assembly'
       boltConversion.new_template_id = '2'     

       default_mapping.conversions.append(boltConversion)
      print("New mapping: ", default_mapping)       

       # Apply the changed template to the connection
       applyTemplateData =  ideastatica_connection_api.ConTemplateApplyParam() # ConTemplateApplyParam |       Template to apply (optional)
        applyTemplateData.connection_template = templateParam.template
        applyTemplateData.mapping = default_mapping
        applyTemplateResult = api_client.template.apply_template(api_client.project.active_project_id, connection1.id, applyTemplateData)

        # Set the new bolt assembly to the operations in the ideaCon file
       commonProperties = ConOperationCommonProperties()
        commonProperties.bolt_assembly_id = 2

        api_client.operation.update_common_operation_properties(api_client.project.active_project_id, connection1.id, commonProperties)

  • Wir können auch die Kosten für die Verbindung abrufen

       # Get the costs of the connection with the applied template
        costs = api_client.connection.get_production_cost(api_client.project.active_project_id, connection1.id)
        print("Costs: ",costs.total_estimated_cost)

  • Als letzten Schritt können wir die Berechnung ausführen, die Ergebnisse anzeigen, die Datei unter einem neuen Namen speichern und die Ergebnisse einsehen

        # Run stress-strain analysis for the connection
        con1_cbfem_results1 = api_client.calculation.calculate(api_client.project.active_project_id, [connection1.id])
        results = api_client.calculation.get_results(api_client.project.active_project_id, [connection1.id])
        CheckResSummary = pd.DataFrame(results[0].check_res_summary)
        print("Results summary: \n",CheckResSummary[1])

        #Create new ideaCon file and apply the template
        updated_file_name = r'C:\Users\AlexanderSzotkowski\Documents\IDEA\API\Tutorial 03\tutorial 03 with template.ideaCon'
        api_client.project.download_project(api_client.project.active_project_id, updated_file_name )
        print("New project with template ",updated_file_name)

    except Exception as e:
        print("Operation failed : %s\n" % e)

Die Ergebnisse sind in Ordnung. Im folgenden Tutorial werden wir uns auf die Optimierung einiger Bauteile konzentrieren.

Angehängte Downloads

  • tutorial 02.contemp (CONTEMP, 34 KB)

  • tutorial 03 - apply_a_template.py (PY, 5 KB)

  • tutorial 03 with template.ideaCon (IDEACON, 14 KB)

  • tutorial 02 with loads.ideaCon (IDEACON, 9.5 KB)

Verwandte Artikel

Neue Website zur API-/Entwicklerdokumentation
  • Stahl
  • Beton
  • IDEA Open Model (API)
  • +3
  • Stahl
  • Beton
  • IDEA Open Model (API)

Knowledge base

Neue Website zur API-/Entwicklerdokumentation

Mehr lesen
Erste Schritte mit der API – Grundlagen 01
  • Stahl
  • Connection
  • IDEA Open Model (API)
  • +3
  • Stahl
  • Connection
  • IDEA Open Model (API)

Tutorials

Erste Schritte mit der API – Grundlagen 01

Mehr lesen
Erste Schritte mit der API – Batch-Import von Kombinationen 02
  • Stahl
  • Connection
  • IDEA Open Model (API)
  • Load effects
  • Equilibrium
  • +5
  • Stahl
  • Connection
  • IDEA Open Model (API)
  • Load effects
  • Equilibrium

Tutorials

Erste Schritte mit der API – Batch-Import von Kombinationen 02

Mehr lesen
Parametrisches Design in IDEA StatiCa Connection – Grundlagen (01)
  • Stahl
  • Connection
  • Connection Library
  • Parametric design
  • IDEA Open Model (API)
  • +5
  • Stahl
  • Connection
  • Connection Library
  • Parametric design
  • IDEA Open Model (API)

Tutorials

Parametrisches Design in IDEA StatiCa Connection – Grundlagen (01)

Mehr lesen