BEGIN:VCALENDAR
PRODID:NingEventWidget-v1
VERSION:2.0
METHOD:PUBLISH
BEGIN:VTIMEZONE
TZID:America/Boise
X-LIC-LOCATION:America/Boise
BEGIN:DAYLIGHT
TZOFFSETFROM:-0700
TZOFFSETTO:-0600
TZNAME:MDT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0600
TZOFFSETTO:-0700
TZNAME:MST
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
UID:2985220:Event:148692
DTSTAMP:20260421T074849Z
SUMMARY:Grasshopper Advanced Training
DESCRIPTION:This is a scripting course based on RhinoCommon and its ut
 ilization within Grasshopper. It is designed to allow the user to acco
 mplish more with this algorithmic modeling program and has the goal to
  enter the programming world and tinker more complex, interactive solu
 tions. We will also explore advanced programming paradigms. There is n
 o class official programming language, as both C# and Vb.Net are possi
 ble on the participant’s side, and all examples will be provided in 
 both C# and Vb.Net. Additionally, we will see how to get started writi
 ng full .Net plug-ins. Finally, we will have time to explore user’s 
 own proposals on the third day.\n\n  \n\nDay 1 Morning: programming in
 troduction in .Net\n• The Grasshopper scripting components. Choosing
  a .Net language. Language developments\n• Variables declaration, as
 signment and utilization. Operators. Methods [functions]. Calls\n• C
 lasses: declaration and instancing. Constructors. Importing a namespac
 e. On3dPoints, OnLines\n• Arrays declaration and usage. Lists. Addin
 g to arrays and lists, advantages and opportunities.\n\nAfternoon: pat
 terns\n• About OOP (object oriented programming) as opposed to proce
 dural programming. Discussion\n• Example of OOP good code reuse: sor
 ting points by coordinates using the .Net SDK classes\n• Lists as in
 put parameters. Trees as input parameters. Usage and limitations\n• 
 Finding resources: on the net with website that can help getting start
 ed and troubleshoot. And books\n\n\nDay 2 Morning: extending Grasshopp
 er functionality with our definitions\n• Store data between updates.
  The use of fields [globals, or static locals]\n• Examples on how to
  use stored data between updates: a simple agents simulation\n• Baki
 ng geometry with scripting directly into the Rhino document. Baking wi
 th names\n• Passing custom types from a scripted component to anothe
 r one. Our own code reusability\n• Rendering an animation from Grass
 hopper. How to get started and final results\n\nAfternoon: customizing
  our tools\n• Our Rhino plug-in with Visual Studio C# [Vb.Net] Expre
 ss Edition & wizard. Parametric mesher\n• Writing a custom Grasshopp
 er component: hacking an exporter for our data to Excel\n\n\nDay 3 All
  day: personal project\n• Rehearsal on any example from the first tw
 o days. A project that you want to start on your own, being it a Rhino
 ceros plug-in, a Grasshopper assembly or a script. Example might be to
  send data through network with UDP to Processing\n\n\nMINIMUM REQUIRE
 MENTS\nA good foundation of Grasshopper visual programming is mandator
 y. You will need a level which corresponds to the Grasshopper 101 cour
 se outline. Examples of things that will not be covered in this course
  are: sorting document spheres by diameter, paneling of a surface with
  grasshopper components. You are expected to already know these from t
 he Grasshopper course.\n\nFor more information visit https://www.grass
 hopper3d.com/events/grasshopper-advanced-training-1
DTSTART;TZID=America/Boise:20110228T000000
DTEND;TZID=America/Boise:20110302T235900
CATEGORIES:workshop, training, scripting
LOCATION:McNeel Europe Office, Barcelona
WEBSITE:http://www.mcneel.eu/training
URL:http://www.mcneel.eu/training
CONTACT:+34 93 319 9002
ORGANIZER;CN="Giulio Piacentino":https://www.grasshopper3d.com/profile
 /GiulioPiacentino
ATTACH;FMTTYPE="image/jpeg":http://storage.ning.com/topology/rest/1.0/
 file/get/2827753173?profile=original
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;RSVP=TRUE;CN="yannis o
 rfanos":https://www.grasshopper3d.com/profile/yianniso
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;RSVP=TRUE;CN="Mirco Bi
 anchini":https://www.grasshopper3d.com/profile/MircoBianchini
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED;RSVP=TRUE;CN="Giulio P
 iacentino":https://www.grasshopper3d.com/profile/GiulioPiacentino
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;RSVP=TRUE;CN="Riccard
 o Gatti":https://www.grasshopper3d.com/profile/RiccardoGatti
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;RSVP=TRUE;CN="Arthur 
 Mamou-Mani":https://www.grasshopper3d.com/profile/arthurmamoumani
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;RSVP=TRUE;CN="Sebasti
 en Perrault":https://www.grasshopper3d.com/profile/SebPerrault
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;RSVP=TRUE;CN="Frances
 co De Luca":https://www.grasshopper3d.com/profile/FrancescoDeLuca
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;RSVP=TRUE;CN="Vito Lo
 savio":https://www.grasshopper3d.com/profile/VitoLosavio
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;RSVP=TRUE;CN="Vittori
 o Menna":https://www.grasshopper3d.com/profile/VittorioMenna
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;RSVP=TRUE;CN="Michele
  Semeghini":https://www.grasshopper3d.com/profile/MicheleSemeghini
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=TENTATIVE;RSVP=TRUE;CN="Alessio
  Erioli":https://www.grasshopper3d.com/profile/Ale2x72
END:VEVENT
END:VCALENDAR
