Zou het niet leuk zijn om uw structurele analyse uit te voeren?, ontwerp, en optimalisatie rechtstreeks in Google Spreadsheets? Zou het niet veel tijd besparen om een eenvoudige tool te hebben die een handvol parameters als invoer gebruikt om een compleet constructiemodel te maken en te analyseren?
In dit artikel presenteren we de integratie van de SkyCiv API met Google Spreadsheets, gebruik makend van Google Apps-script. Apps Script is een cloudgebaseerd JavaScript-platform waarmee u taken in Google-producten kunt integreren en automatiseren, zodat u eenvoudig uw eigen apps kunt maken om repetitieve taken te automatiseren door alle mogelijkheden van Google-producten en elke andere service te combineren die via HTTP-verzoeken kan communiceren. Dit is het geval bij SkyCiv, onze API ontvangt een object met de modelinformatie en de functies die SkyCiv op het model zou moeten draaien. Nadat alle berekeningen zijn uitgevoerd, de API reageert met de resultaten van de analyse, ontwerp, en optimalisatie afhankelijk van wat er werd gevraagd om terug te keren.
Deze oplossing komt voort uit het probleem van het handmatig moeten maken van het model van de structuren die uw bedrijf doorgaans ontwerpt en het handmatig moeten ophalen van de resultaten van de analyse-/ontwerp-/optimalisatiesoftware naar een spreadsheet om die resultaten verder te verwerken.. Als voorbeeld, we gaan uitleggen hoe je een spreadsheet kunt maken waarmee een keermuur over palen kan worden gemaakt in SkyCiv S3D, lopende analyse, en de resultaten terug naar de spreadsheet te krijgen.
Het model bestaat uit een plaat die de muurstam voorstelt bovenop een voetbalk die wordt ondersteund door twee palen. Het is een vrij eenvoudige structuur, maar het elke keer opnieuw modelleren kan een erg vervelende taak zijn. Hier is de stapsgewijze handleiding om een spreadsheet te laten communiceren met de SkyCiv API en de modellerings- en analyseprocessen te automatiseren.
Notitie: De spreadsheet die in dit voorbeeld wordt gebruikt, samen met alle bijbehorende code, kan worden benaderd hier, onthoud dat je eerst een kopie in je Drive moet maken door naar Bestand . te gaan>Een kopie maken
de ingang
De eerste stap is om de set parameters te identificeren die het structurele systeem volledig kunnen beschrijven. In het geval van de beschreven keermuur, we moeten de stam geometrisch beschrijven, de voet, en de stapels, aanvullend, we hebben de eigenschappen van de ondersteunende grond nodig, evenals de belastingen die op de muur zullen worden uitgeoefend. Dat gezegd hebbende, de parameters die het model beschrijven, zijn georganiseerd in enkele tabellen in het eerste blad.
De code
Alle code is rechtstreeks in de gebruikersinterface van Apps Script geschreven. Om naar de code-editor te gaan, u kunt in de menubalk naar Extensies > Apps-script
Gebruikersinteractie
Om de gebruiker te laten communiceren met de functies die we gaan schrijven, kunnen we een menu-item toevoegen aan de gebruikersinterface, dat kan eenvoudig worden gedaan met behulp van de volgende code::
Gegevens ophalen uit de spreadsheet
In de code, we hebben alle gegevens nodig met betrekking tot de geometrische parameters, belastingen, en ondersteuningsvoorwaarden uit de spreadsheet, met dat doel, we maken een Apps Script-object (lijkt erg op een JavaScript-versie) met behulp van de structuur die wordt weergegeven in het volgende fragment:
Het model maken
De belangrijkste functie is degene die het modelobject maakt dat naar de SkyCiv API wordt verzonden, het volgt enkele regels die te vinden zijn in onze API-documentatie. We moeten veel for-lussen en voorwaardelijke instructies schrijven om dat modelobject met succes te maken (knooppunten, leden, secties, belastingen, enzovoort...). Alle code is te vinden hier.
Het API-object maken
Het model dat in de vorige stap is gemaakt, moet worden aangesloten op een API-object dat alle instructies voor de API bevat, zodat het weet wat het moet doen, de algemene structuur van het API-object is ook te vinden in onze API-documentatie. Voor dit voorbeeld, we gaan een sessie starten, stel het model in, mesh de platen, oplossen, en sla het model op. Alle code is te vinden hier. Het API-object bevat ook de authenticatiegegevens, die bestaat uit uw e-mail geregistreerd in SkyCiv en uw sleutel, voor het geval u de voorbeeldspreadsheet gebruikt, zorg ervoor dat je die informatie invult in de Auth-blad.
Het verzoek indienen bij de SkyCiv API
Zoals eerder gezegd, dit API-object wordt verzonden naar de SkyCiv API met behulp van een POST HTTP-verzoek, dat verzoek wordt uitgevoerd met behulp van de volgende code::
Het 'respons'-object bevat wat de API op het verzoek heeft gereageerd, dat antwoord kan verder worden verwerkt in de Spreadsheet of in de code volgens uw specifieke behoeften. Het bevat reacties, verplaatsingen, benadrukt, Interne krachten, enzovoort...
De resultaten
De eerste keer dat u het script uitvoert, je moet het autoriseren, en zodra het model is gemaakt en geanalyseerd, de resultaten komen terug naar de spreadsheet op de manier die u in de code hebt gespecificeerd. De hele spreadsheet ziet er zo uit:
Het script krijgt een URL waar het model is opgeslagen, wanneer u naar die URL gaat, kunt u verifiëren, het model wijzigen en oplossen, alles in de SkyCiv S3D-gebruikersinterface:
Het beste van deze integratie is dat je de tijd die je besteedt aan het modelleren van deze typische structuren aanzienlijk kunt verkorten. Door simpelweg de invoerparameters aan te passen, kunt u een kant-en-klaar model verkrijgen en de resultaatanalyse verder automatiseren, ontwerpverkenning, ontwerpcontroles, en optimalisatie door het beste van de SkyCiv API te combineren, Google Spreadsheets en Apps Script.
Gelukkig coderen!
Productontwikkelaar
BEng (Civiel)