Idea Statica
  • Acciaio
  • Calcestruzzo
  • BIM & workflows
  • Support & Learning
  • Prezzi
  • Azienda
  • Panoramica Steel
  • Progetto connessioni
  • Progetto membrature
  • Progettazione parametrica
  • Casi di studio acciaio
  • Panoramica Concrete
  • Progetto muri e dettagli
  • Progetto di ancoraggi
  • Membrature e sezioni
  • Casi di studio calcestruzzo
  • Panoramica BIM
  • Integrazioni supportate
  • Checkbot
  • Viewer
  • API
  • Support Center
  • E-learning & Certificazione
  • Blog
  • Formazione in presenza
  • Downloads & Licensing
  • Piani
  • Strumento gratuito per la community
  • Studenti & Docenti
  • Quanto risparmierai?
  • Contatti
  • Blog
  • Ricerca e sviluppo
  • Rivenditori autorizzati
  • Acciaio
    Panoramica SteelProgetto connessioniProgetto membratureProgettazione parametricaCasi di studio acciaio
  • Calcestruzzo
    Panoramica ConcreteProgetto muri e dettagliProgetto di ancoraggiMembrature e sezioniCasi di studio calcestruzzo
  • BIM & workflows
    Panoramica BIMIntegrazioni supportateCheckbotViewer API
  • Support & Learning
    Support CenterE-learning & CertificazioneBlogFormazione in presenzaDownloads & Licensing
  • Prezzi
    PianiStrumento gratuito per la communityStudenti & DocentiQuanto risparmierai?
  • Azienda
    ContattiBlogRicerca e sviluppoRivenditori autorizzati
Prova di 14 giorni
Prova di 14 giorni
  • Acciaio
  • Calcestruzzo
  • BIM & workflows
  • Support & Learning
  • Prezzi
  • Azienda

Iscriviti alla nostra newsletter

Azienda

  • Chi siamo
  • Collaborazioni
  • Carriere
  • Tecnologia brevettata per ingegneri strutturali

Risorse

  • Progetti dei clienti
  • Casi studio
  • IDEA StatiCa Connection Library
  • Libri di verifica

Legale

  • IDEA StatiCa CONTRATTO DI LICENZA CON L'UTENTE FINALE
  • Informativa globale sulla privacy
  • Termini di Servizio – IDEA StatiCa Viewer
  • Licenze

Aiuto

  • Contatti
  • Richiesta di preventivo
  • Rivenditori
  • Download
FacebookInstagramLinkedInYouTube

© IDEA StatiCa 2009-2026

Affidato e utilizzato in tutto il mondo da ingegneri, fabbricanti e consulenti.

Centro di supportoTutorialCome iniziare con API - Importare un modello ed eseguire un calcolo 03
Come iniziare con API - Importare un modello ed eseguire un calcolo 03
SteelConnection designTutorialsConnectionIDEA Open Model (API)

Come iniziare con API - Importare un modello ed eseguire un calcolo 03

Questo articolo è disponibile anche in
ENCZDEESFRITPTNLHUROKRPLTHTRVIZH

In questa esercitazione imparerai a importare un modello, ad apportare alcune modifiche alle impostazioni predefinite e ad ottenere i risultati insieme ai costi.

Primi passi

Si consiglia di consultare il tutorial Come iniziare con l'API - Nozioni di base 01, che illustra l'API e come impostare l'ambiente.

File di connessione

Questo esempio si basa sui file creati nell'esercitazione Come iniziare con l'API - Importazione in batch di combinazioni 02.

Scaricare i file tutorial 02 with loads.ideaCon e tutorial 02.contemp sul proprio PC.

Client Python

Anche in questo caso, eseguire "IdeaStatiCa.ConnectionRestApi.exe" in CMD all'interno della cartella IDEA StatiCa appropriata e aprire lo strumento IDE di vostra scelta.

  • Creare un nuovo file e importare i pacchetti che consentiranno l'uso del calcolo e il collegamento con l'URL localhost.

Codice sorgente:

## Importazione del pacchetto API
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

#Importa i pacchetti per la visualizzazione
import pandas as pd

## Collegamento con baseUrl
import ideastatica_connection_api.connection_api_service_attacher as connection_api_service_attacher

  • Configurare il logging tramite la variabile"baseUrl", che richiamerà il proprio localhost. Nel secondo passo, accoppiare il percorso assoluto del file IDEA StatiCa Connection.

## Configurare il logging
baseUrl = "http://localhost:5000"

## Percorso assoluto della cartella con lo script python e il modulo di connessione
project_file_path = r "C:\Users\AlexanderSzotkowski\Documents\IDEA\API\Tutorial 03\tutorial 02 with loads.ideaCon"
print("Opening project ",project_file_path)

  • Abbinare il client a un servizio già in esecuzione. Utilizzare il blocco try/except: poiché il blocco try genera un errore, verrà eseguito il blocco except. Nella prima fase, è necessario aprire il progetto e trovare l'ID del progetto, che è unico per ogni progetto IDEA StatiCa. Poi abbiamo bisogno di tutte le connessioni, memorizzate nel nostro file, poiché vogliamo applicare il modello solo alla prima. Come passo successivo, possiamo leggere il file del modello di mappatura predefinito e aggiungere un altro assieme di bulloni (M20 8.8) al database MPRL.

# Creare un client collegato a un servizio già in esecuzione
con connection_api_service_attacher.ConnectionApiServiceAttacher(baseUrl).create_api_client() as api_client:
try:
# Aprire il progetto
uploadRes = api_client.project.open_project_from_filepath(project_file_path)
activeProjectId = api_client.project.active_project_id
# Ottenere l'elenco di tutte le connessioni nel progetto
connections_in_project = api_client.connection.get_connections(activeProjectId)

# prima connessione nel progetto
connection1 = connections_in_project[0]

# ConTemplateMappingGetParam | Dati del modello per ottenere la mappatura predefinita (opzionale)
templateParam = ideastatica_connection_api.ConTemplateMappingGetParam()

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

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

# ottiene la mappatura predefinita per il template selezionato e la connessione
default_mapping = api_client.template.get_default_template_mapping(api_client.project.active_project_id, connection1.id, templateParam)
print("Mappatura predefinita: ",default_mapping)

#aggiungere il nuovo assembly bolt al database MPRL
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)

  • Se si desidera assegnare il nuovo assieme di bulloni all'operazione Piastra per piastra direttamente, occorre eseguire il comando BaseTemplateConversion() e aggiungerlo al modello di mappatura.

# aggiungere il nuovo assieme di bulloni al modello di mappatura
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("Nuova mappatura: ", default_mapping)

# Applicare il modello modificato alla connessione
applyTemplateData = ideastatica_connection_api.ConTemplateApplyParam() # ConTemplateApplyParam | Modello da applicare (opzionale)
applyTemplateData.connection_template = templateParam.template
applyTemplateData.mapping = default_mapping
applyTemplateResult = api_client.template.apply_template(api_client.project.active_project_id, connection1.id, applyTemplateData)

# Impostare il nuovo assieme bolt alle operazioni nel file ideaCon
commonProperties = ConOperationCommonProperties()
commonProperties.bolt_assembly_id = 2

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

  • Possiamo anche ottenere i costi della connessione

# Ottenere i costi della connessione con il modello applicato
costs = api_client.connection.get_production_cost(api_client.project.active_project_id, connection1.id)
print("Costs: ",costs.total_estimated_cost)

  • Come ultimo passo, possiamo eseguire il calcolo, vedere i risultati memorizzare il file con un nuovo nome e vedere i risultati

# Eseguire l'analisi di sollecitazione-deformazione per la connessione
con1_cbfem_results1 = api_client.calculation.calculate(api_client.project.active_project_id, calcParams)
results = api_client.calculation.get_results(api_client.project.active_project_id, calcParams)
CheckResSummary = pd.DataFrame(results[0].check_res_summary)
print("Riepilogo risultati: \n",CheckResSummary[1])

#Creare un nuovo file ideaCon e applicare il modello
updated_file_name = r'C:\Users\AlexanderSzotkowski\Documents\IDEA\API\Tutorial 03\tutorial 03 con modello.ideaCon'
api_client.project.download_project(api_client.project.active_project_id, updated_file_name )
print("Nuovo progetto con modello ",updated_file_name)

except Exception as e:
print("Operazione fallita : %s\n" % e)

I risultati sono OK. Nel prossimo tutorial ci concentreremo sull'ottimizzazione di alcuni componenti.

Download allegati

  • 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)

Articoli correlati

Sito web della documentazione API/Sviluppatore
  • Acciaio
  • Calcestruzzo
  • IDEA Open Model (API)
  • v25.1
  • v23.1
  • +5
  • Acciaio
  • Calcestruzzo
  • IDEA Open Model (API)
  • v25.1
  • v23.1

Knowledge base

Sito web della documentazione API/Sviluppatore

Leggi di più
Come iniziare con le API - Nozioni di base 01
  • Acciaio
  • Connection
  • IDEA Open Model (API)
  • +3
  • Acciaio
  • Connection
  • IDEA Open Model (API)

Tutorials

Come iniziare con le API - Nozioni di base 01

Leggi di più
Come iniziare con le API - Importazione batch di combinazioni 02
  • Acciaio
  • Connection
  • IDEA Open Model (API)
  • Load effects
  • Equilibrium
  • +5
  • Acciaio
  • Connection
  • IDEA Open Model (API)
  • Load effects
  • Equilibrium

Tutorials

Come iniziare con le API - Importazione batch di combinazioni 02

Leggi di più
Progettazione parametrica in IDEA StatiCa Connection - Nozioni di base (01)
  • Acciaio
  • Connection
  • Connection Library
  • Parametric design
  • IDEA Open Model (API)
  • +5
  • Acciaio
  • Connection
  • Connection Library
  • Parametric design
  • IDEA Open Model (API)

Tutorials

Progettazione parametrica in IDEA StatiCa Connection - Nozioni di base (01)

Leggi di più