Waarom de keuze voor Rhinoceros?
Er is een ruim assortiment aan computer programma's dat beschikt over de mogelijkheid om een script te laten uitvoeren.
Waarom afwijken van VBScript en RhinoScript?
Hoewel VbScript (en daarbovenop RhinoScript) een goede basis vormen voor generieke code ontwikkeling, geven zij tegelijk ook de beperking aan. Standaard bevat VbScript slechts een beperkt aantal functies en mogelijkheden. Wanneer deze taal toegepast wordt op een complexe opgave, zal een groot aantal zeer generieke functies eerst zelf geschreven moeten worden, wat voor een grote vertraging zorgt, aangezien hiermee niet de opgave verder ontwikkeld wordt, maar de taal eerst uitgebreid dient te worden met deze extra 'standaard' functionaliteit. Om deze vertraging te overkomen is besloten slechts voor ene heel klein gedeelte gebruik te maken van VbScript, namelijk voor het gedeelte dat de daadwerkelijk geometrie tekent. De calculaties en berekeningen die voorafgaan aan het tekenen worden buiten VbScript om opgesteld.
Introductie van PHP in de opgave
Alle berekeningen, calculaties en beslissingen die door het script worden uitgevoerd, zijn gedaan in PHP.
Deze codetaal gaf twee voorname voordelen in de toepassing op de opgave.
Allereerst was de persoonlijk ontwikkeling in deze taal reeds in een vergevorderde fase. Door jaren van persoonlijke ontwikkeling op het gebied van codetaal en internet toepassingen was PHP een van de vereisten om goed onder de knie te krijgen. Deze ervaring maakte het toepassing van deze taal op elke opgave zonder vertraging van eerst te taal te leren en uit te breiden op de specifieke opgave. Hiernaast is een groot voordeel van PHP dat deze taal in staat is om op internet te gebruiken en om hiermee een (eenvoudige) koppeling te maken met een database. Hiermee is het dus mogelijk om alle rekenkundige processen te voltooien buiten het daadwerkelijke tekenprogramma om. Door deze scheiding van reken en teken processen is het script in staat om verschillende alternatieven of varianten te berekenen, los van het model dat in het tekenprogramma wordt getoond. Door het gehele PHP script met haar rekenprocessen op een server computer onder te brengen, kan ten volste gebruik gemaakt worden van tijd en de krachtige computer processen.
PHP is ook een scripttaal waarmee websites op internet gecreëerd kunnen worden. Vanuit dit perspectief is besloten een visuele interface te maken die als website bekeken kan worden. Deze interface is tevens het configuratie gedeelte voor de parameters die in het rekenkundige script gebruikt worden. De interface stelt een willekeurige gebruiker dus in staat om zelf het script te voorzien van parameters. Deze parameters worden tevens opgeslagen in een database, waardoor het rekenkundige gedeelte van het script deze kan uitvoeren. De gebruiker wordt tenslotte in staat gesteld zijn persoonlijke 'versie' uit te laten rekenen en op te slaan in de database. Vanuit elke computer kan vervolgens de database uitgelezen worden en de nodige gegevens opgehaald worden. Het VbScript gedeelte wordt ten slotte gebruikt om deze gegevens om te zetten in geometrische gegevens. Rhinoceros gebruik dit gedeelte om de berekende geometrie te tekenen en daarmee dus een visualisatie te geven aan de eind gebruiker.
Gebruik van een MySQL database
De algemene keuze in deze opgave te kiezen voor een universele programmeertaal en niet voor een applicatie afhankelijke taal heeft naast de grote support en toepassingsgerichtheid tevens als voordeel dat op een zeer eenvoudige manier een koppeling met MySQL gemaakt kan worden. MySQL is een database management systeem dat een programmeur in staat stelt een oneindige hoeveelheid informatie op te slaan in een database systeem. Hierdoor kan deze data niet alleen makkelijk en snel worden opgeslagen maar vooral ook makkelijk en snel worden uitgelezen. In deze opgave was het nuttig alle berekende data en alle parameters ingesteld door de gebruiker op een veilige manier op te slaan, zonder gevaar dat deze informatie verloren kon gaan. Dit is de reden waarom de keuze gemaakt is een koppeling met dit database systeem te maken. Deze koppeling kan vanuit het user interface eenvoudig bewerkstelligd worden. PHP, de taal waarmee het user interface tot stand is gekomen is uitermate geschikt voor deze koppeling, en heeft een groot deel van de functionaliteit om deze koppeling tot stand te brengen reeds in haar codebase aanwezig. Echter, niet alleen het user interface voor de instellingen en berekeningen dient gebruik te maken van deze koppeling, ook het 'teken' gedeelte dat de berekende data omzet in een drie dimensionale beeldtaal dient deze koppeling te kunnen maken. Hiervoor is in Rhinoceros, dat uitsluitend gebruik maakt van een VBScript gestuurde interface, een eenvoudige koppeling geschreven die de informatie uit de MySQL database kan ophalen en uitlezen. Een groot voordeel van het gebruik van een dergelijk informatiesysteem is de veilige en eenvoudige opslag- en uitleesmogelijkheid.
Er is een ruim assortiment aan computer programma's dat beschikt over de mogelijkheid om een script te laten uitvoeren.
Een scripttaal is een programmeertaal die geschikt is voor het schrijven van scripts, kleine programmaatjes om veel voorkomende taken (bijv. systeembeheertaken) te automatiseren, of om een grote maar eenmalige taak te verrichten. Veelal hebben deze taken te maken met het verwerken van tekstbestanden. Scripttalen zijn over het algemeen high-level talen, en worden doorgaans geïmplementeerd door middel van een interpreter, omwille van snelheid en gemak bij het ontwikkelen.
Zowel 3DStudioMax/Viz, AutoCAD, Maya, Rhinoceros, Bryce en anderen beschikken over deze mogelijkheid. De keuze voor gevallen op Rhinoceros, waarmee niet gezegd wordt dat andere applicaties ongeschikt zijn. Het voordeel van Rhinoceros boven de andere genoemde applicaties is dat zij de mogelijkheid heeft gebruik te maken van een meer generieke codetaal. 3DStudioMax maakt gebruik van MaxScript en AutoCAD van Lisp bijvoorbeeld. Rhinoceros maakt gebruik van VbScript en heeft daarbovenop nog eigen functies toegevoegd onder de naam RhinoScript.
VBScript is een scripttaal, ontwikkeld door Microsoft. De taal is een subset van Visual Basic for Applications (VBA). VBScript werd vooral aangewend door systeembeheerders die in de taal een krachtiger hulpmiddel vinden voor automatisering dan de batch-bestanden die sinds de jaren 70 bestaan.VBScript kan worden gebruikt in Active Server Pages in een webomgeving. De code kan ook op zichzelf worden uitgevoerd op het Windows-platform met behulp van wscript.exe in een GUI-omgeving of cscript.exe op een opdrachtregel. De broncode wordt typisch opgeslagen in bestanden met extensie '.vbs'. Tenslotte kan de taal ook gebruikt worden in de webbrowser Internet Explorer als alternatief voor Javascript. De laatste versie van VBScript is versie 5.6.
Waarom afwijken van VBScript en RhinoScript?
Hoewel VbScript (en daarbovenop RhinoScript) een goede basis vormen voor generieke code ontwikkeling, geven zij tegelijk ook de beperking aan. Standaard bevat VbScript slechts een beperkt aantal functies en mogelijkheden. Wanneer deze taal toegepast wordt op een complexe opgave, zal een groot aantal zeer generieke functies eerst zelf geschreven moeten worden, wat voor een grote vertraging zorgt, aangezien hiermee niet de opgave verder ontwikkeld wordt, maar de taal eerst uitgebreid dient te worden met deze extra 'standaard' functionaliteit. Om deze vertraging te overkomen is besloten slechts voor ene heel klein gedeelte gebruik te maken van VbScript, namelijk voor het gedeelte dat de daadwerkelijk geometrie tekent. De calculaties en berekeningen die voorafgaan aan het tekenen worden buiten VbScript om opgesteld.
Introductie van PHP in de opgave
Alle berekeningen, calculaties en beslissingen die door het script worden uitgevoerd, zijn gedaan in PHP.
PHP is een scripttaal, die hoofdzakelijk wordt gebruikt om op webservers dynamisch webpagina's te creëren. PHP maakt gebruik van de zend-engine, die in 1995 is ontworpen door Rasmus Lerdorf, een senior software engineer bij IBM. De taal is duidelijk geïnspireerd door Larry Walls Perl. Aanvankelijk stonden de letters PHP voor Personal Home Page (de volledige naam van de software was Personal Home Page/Forms Interpreter, PHP/FI). Sinds PHP 3.0 is de betekenis een recursief acroniem geworden: 'PHP: Hypertext Preprocessor'. Deze naam geeft aan waar de taal meestal voor gebruikt wordt: informatie verwerken tot hypertext (meestal HTML en XHTML).
Deze codetaal gaf twee voorname voordelen in de toepassing op de opgave.
Allereerst was de persoonlijk ontwikkeling in deze taal reeds in een vergevorderde fase. Door jaren van persoonlijke ontwikkeling op het gebied van codetaal en internet toepassingen was PHP een van de vereisten om goed onder de knie te krijgen. Deze ervaring maakte het toepassing van deze taal op elke opgave zonder vertraging van eerst te taal te leren en uit te breiden op de specifieke opgave. Hiernaast is een groot voordeel van PHP dat deze taal in staat is om op internet te gebruiken en om hiermee een (eenvoudige) koppeling te maken met een database. Hiermee is het dus mogelijk om alle rekenkundige processen te voltooien buiten het daadwerkelijke tekenprogramma om. Door deze scheiding van reken en teken processen is het script in staat om verschillende alternatieven of varianten te berekenen, los van het model dat in het tekenprogramma wordt getoond. Door het gehele PHP script met haar rekenprocessen op een server computer onder te brengen, kan ten volste gebruik gemaakt worden van tijd en de krachtige computer processen.
PHP is ook een scripttaal waarmee websites op internet gecreëerd kunnen worden. Vanuit dit perspectief is besloten een visuele interface te maken die als website bekeken kan worden. Deze interface is tevens het configuratie gedeelte voor de parameters die in het rekenkundige script gebruikt worden. De interface stelt een willekeurige gebruiker dus in staat om zelf het script te voorzien van parameters. Deze parameters worden tevens opgeslagen in een database, waardoor het rekenkundige gedeelte van het script deze kan uitvoeren. De gebruiker wordt tenslotte in staat gesteld zijn persoonlijke 'versie' uit te laten rekenen en op te slaan in de database. Vanuit elke computer kan vervolgens de database uitgelezen worden en de nodige gegevens opgehaald worden. Het VbScript gedeelte wordt ten slotte gebruikt om deze gegevens om te zetten in geometrische gegevens. Rhinoceros gebruik dit gedeelte om de berekende geometrie te tekenen en daarmee dus een visualisatie te geven aan de eind gebruiker.
Gebruik van een MySQL database
De algemene keuze in deze opgave te kiezen voor een universele programmeertaal en niet voor een applicatie afhankelijke taal heeft naast de grote support en toepassingsgerichtheid tevens als voordeel dat op een zeer eenvoudige manier een koppeling met MySQL gemaakt kan worden. MySQL is een database management systeem dat een programmeur in staat stelt een oneindige hoeveelheid informatie op te slaan in een database systeem. Hierdoor kan deze data niet alleen makkelijk en snel worden opgeslagen maar vooral ook makkelijk en snel worden uitgelezen. In deze opgave was het nuttig alle berekende data en alle parameters ingesteld door de gebruiker op een veilige manier op te slaan, zonder gevaar dat deze informatie verloren kon gaan. Dit is de reden waarom de keuze gemaakt is een koppeling met dit database systeem te maken. Deze koppeling kan vanuit het user interface eenvoudig bewerkstelligd worden. PHP, de taal waarmee het user interface tot stand is gekomen is uitermate geschikt voor deze koppeling, en heeft een groot deel van de functionaliteit om deze koppeling tot stand te brengen reeds in haar codebase aanwezig. Echter, niet alleen het user interface voor de instellingen en berekeningen dient gebruik te maken van deze koppeling, ook het 'teken' gedeelte dat de berekende data omzet in een drie dimensionale beeldtaal dient deze koppeling te kunnen maken. Hiervoor is in Rhinoceros, dat uitsluitend gebruik maakt van een VBScript gestuurde interface, een eenvoudige koppeling geschreven die de informatie uit de MySQL database kan ophalen en uitlezen. Een groot voordeel van het gebruik van een dergelijk informatiesysteem is de veilige en eenvoudige opslag- en uitleesmogelijkheid.