<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>digital futures &#187; tool</title>
	<atom:link href="http://www.digitalfutures.info/tag/tool/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.digitalfutures.info</link>
	<description>digital futures</description>
	<lastBuildDate>Thu, 17 Nov 2011 18:53:23 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Integrated Project Delivery + BIM</title>
		<link>http://www.digitalfutures.info/1/integrated-project-delivery-bim /</link>
		<comments>http://www.digitalfutures.info/1/integrated-project-delivery-bim /#comments</comments>
		<pubDate>Wed, 14 Apr 2010 21:51:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[-]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[architecture]]></category>
		<category><![CDATA[Autodesk]]></category>
		<category><![CDATA[BIM]]></category>
		<category><![CDATA[pratt]]></category>
		<category><![CDATA[tool]]></category>

		<guid isPermaLink="false">http://www.digitalfutures.info/?p=1131</guid>
		<description><![CDATA[

Professional Practice Lecture Series
Pratt Institute
School of Undergraduate Architecture
We would like ...]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.digitalfutures.info/wp-content/uploads/2010/04/building2.jpg"><br />
<img class="aligncenter size-full wp-image-1130" title="building" src="http://www.digitalfutures.info/wp-content/uploads/2010/04/building2.jpg" alt="building" width="600" height="500" /></a></p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Professional Practice Lecture Series</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Pratt Institute</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">School of Undergraduate Architecture</div>
<p><span style="color: #000000;">We would like to thank </span><span class="gI"><span class="gD" style="color: #00681c;"><span style="color: #000000;"><strong>Arta Yazdanseta </strong>for taking the time and contributing the following article to digitalfutures. Arta is currently teaching a <a href="http://usa.autodesk.com/adsk/servlet/pc/index?id=3781831&amp;siteID=123112">REVIT</a> course @ Pratt Manhattan.</span><br />
</span></span></p>
<p><strong><strong>P</strong><span style="font-size: small;"><strong>rofessional Practice Lecture Series </strong></span><span style="font-weight: normal; "><span style="font-size: small;"><strong>Pratt Institute  School of Undergraduate Architecture</strong></span></span></strong></p>
<p><strong> </strong></p>
<p><strong><strong>I</strong></strong><strong>ntro:</strong></p>
<p><strong> </strong></p>
<p style="display: inline !important; "><span style="font-weight: normal;">According to the McGraw Hill Construction 2009 Smart Market Report – The Business Value of BIM, the number of professionals in the AEC (architecture, engineer and construction) fields who make use of BIM as an</span></p>
<p style="display: inline !important; "><span style="font-weight: normal;">integral part of their practice experienced a large upswing in growth from 28% of professionals in 2007 to 48% </span></p>
<p style="display: inline !important; "><span style="font-weight: normal;">of professionals in 2009.</span></p>
<p style="display: inline !important; "><span style="font-weight: normal;"><br />
</span></p>
<p>As the professional adoption of BIM is gaining momentum, the AEC industry is confronting the inevitable next step: that is, to use BIM throughout all the phases of a building’s life cycle; from its conceptual creation to construction to facilities management to demolition.</p>
<p><span style="font-weight: normal;">This research-based lecture series is aimed to answer some of the questions on the subjects mentioned above.</span></p>
<p><span style="font-weight: normal;"> </span></p>
<p><strong>BIM + IPD (Integrated Project Delivery)</strong></p>
<p><strong>Integrated Project Delivery (IPD)<span style="font-weight: normal;"> is a project delivery method distinguished by a contractual agreement between a minimum of the owner, design professional, and builder where risk and rewards are shared and stakeholder success is dependent on project success.</span></strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong>Change in dynamic &gt; Change in workflow</strong></p>
<p><span style="font-weight: normal;">The new IPD Agreement redefines the traditional relationship of the three main participants of a project: the Owner, the Designer, and the Builder. The consequence of this change in dynamic is the drastic change in a project’s workflow.</span></p>
<p><span style="font-weight: normal;">In this lecture we examine the characteristics of this new dynamic between the key participants of a project and the resulting workflow.</span></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong>Change in the main parties’ dynamic:</strong></p>
<p><strong><strong> </strong></strong><strong> </strong><span style="font-weight: normal; font-size: 13px;">A California Council these changes in the relationships and roles of the main participants can be broken down into six main categories:</span></p>
<p style="padding-left: 30px;">1- Early Involvement of the Key Participants:</p>
<p style="padding-left: 30px;">From the very beginning the owner should identify the designer and the builder of the project. The relationships should be established on mutual trust and respect, and compatibility and comfort in collaboration should be tested. The team will help the owner to crystallize the project’s goals and objectives from very early on.</p>
<p style="padding-left: 30px;">2- Shared Risk/ Rewards:</p>
<p style="padding-left: 30px;">Full Integrated Project Delivery is a goal-oriented project delivery, wherein the team members share the losses and gains of a project. This new mindset creates a stronger incentive for participants to work towards the success of the project instead of personal gain.</p>
<p style="padding-left: 30px;">3- Multi-Party Contact:</p>
<p style="padding-left: 30px;">The IPD Agreement is a three-way contract, which unites the three main parties (Owner, Architect, and Builder) together. As a result, the success of one party is tied directly to the other. It is crucial, for the success of the project, that from the very beginning the risk and responsibility matrix of each participant be clearly identified.</p>
<p style="padding-left: 30px;">4- Collaborative Decision Making/Control:</p>
<p style="padding-left: 30px;">From the beginning of a project the main parties need to establish an agreement and a method to ensure that their representatives are involved in every step of the project. Also, the parties need to execute a previously agreed upon system where possible disagreements between team members can be resolved by an hierarchical management team.</p>
<p style="padding-left: 30px;">5- Liability Wavers Among Key Participants:</p>
<p style="padding-left: 30px;">To reinforce the sense of unity and a collaborative environment the main parties should waive any claim amongst themselves except for in the instance of a willful default. However, third-party liability (meaning, parties involved beyond the initial three-way contract, such as sub-contractors) should be addressed by the standard liability coverage.</p>
<p style="padding-left: 30px;">6- Jointly Developed/Validated Target:</p>
<p style="padding-left: 30px;">To gauge a project’s success the parties need to agree upon a clear and specific set of criteria. This set of criteria can be established according to the owner’s goal for the project and can vary from schedule and budget to sustainability objectives. The compensation of the non-owner parties will be in accordance to the meeting of the established targets.</p>
<h3><strong>Change in workflow:</strong></h3>
<p><span style="font-weight: normal;">“A Building Information Model is a digital representation of physical and functional characteristics of a facility. As such, it serves as a shared knowledge resource for information about a facility forming a reliable basis for decisions during life cycle from inception onward.”</span></p>
<p style="text-align: right;"><span style="color: #c0c0c0;">National Institute of Building Science (NIBS)</span></p>
<p><strong> </strong></p>
<p><strong><span style="font-weight: normal;">Building Information Modeling (BIM) programs have revolutionized the workflow of IPD. From the very early stages of a project AEC professionals can have access to information that would not have been available to them in a typical project until the very end of the CD phase. </span></strong></p>
<p><strong> </strong></p>
<p><strong> </strong></p>
<p><strong><span style="font-weight: normal;"><strong> </strong></span></strong></p>
<p><strong><strong> </strong></strong></p>
<p style="display: inline !important;"><span style="font-weight: normal;">BIM creates an environment where designers and builders can come together to help one another </span></p>
<p style="display: inline !important;"><span style="font-weight: normal;">to make wiser decisions in advancement of a better and more responsible project. The resulting digital<strong> <span style="font-weight: normal;">model would be used, not only throughout the conception and construction of a building, but for facility managing and, eventually, the demolition of a building.</span></strong></span></p>
<p><strong><strong><strong><a href="http://www.digitalfutures.info/wp-content/uploads/2010/04/WorkFlow.jpg"><img class="aligncenter size-full wp-image-1134" title="WorkFlow" src="http://www.digitalfutures.info/wp-content/uploads/2010/04/WorkFlow.jpg" alt="WorkFlow" width="600" height="400" /></a></strong></strong></strong></p>
<p><strong><strong><strong><span style="font-weight: normal;"> </span></strong></strong></strong></p>
<p><strong><strong><strong><span style="font-weight: normal;">In this new workflow, the idea of the clear phases of a project blur. Since the digital model is constantly evolving, and the building data is readily and instantaneously available to all parties, the traditional SD, DD, and CD sets change to “just in time” sets.</span></strong></strong></strong></p>
<p><strong><strong><strong><span style="font-weight: normal;">This increase of information requires a longer time period to manage and, as a result, the design phase of a project expands. However, by the end of the Detailed Design phase, the model has evolved to a high level of sophistication so that the Implementation Document phase shortens drastically.</span></strong></strong></strong></p>
<p><strong><strong><strong><span style="font-weight: normal;">Also, since from the very beginning the builder is involved with the project, the bidding and contractual negotiation phase will be eliminated and the cost estimates and market risk controls become much more accurate.</span></strong></strong></strong></p>
<p><strong><strong><strong><span style="font-weight: normal;">Shop Drawings will eventually become eliminated. Architects will not be obligated to create detail drawings to show the design intent. The builder must provide the digital BIM model with the required detailed elements. These elements will be discussed between the main participants and will be approved and used directly for construction and fabrication. According to the National Institute of Standards and Technology’s 2004 survey, estimated RFI management costs (combined contractors and architects/engineers) has been $500 million per year. Since IDP allows for a seamless and much more accurate coordination and collaboration between parties, the amount of RFI costs will be drastically decreased.</span></strong></strong></strong></p>
<p><strong><strong><strong> </strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><span style="font-weight: normal;"> </span></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong> </strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p style="display: inline !important;"><span style="font-weight: normal;"><span style="font-weight: normal;"><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></span></span></p>
<p><span style="font-weight: normal;"><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></span><span style="font-weight: normal;">In conclusion, it is important to highlight that BIM can be explored to its fullest by practicing Integrated Project Delivery. In order to gain the maximum advantage of IPD, the team members should be willing to collaborate in a transparent and open-book manner to create an environment of trust. Integrated Project Delivery is an option for sophisticated and active owners, whose goals are not only their financial gain, but also a better design and higher quality of work.</span></p>
<p><strong>A Case Study</strong></p>
<p style="display: inline !important;"><span style="font-weight: normal;"> </span></p>
<p><span style="font-weight: normal;">The following case study is one of six case studies done by a collaboration of AIA National, AIA California Council, AGC California and McGraw-Hill Construction.</span></p>
<p><span style="font-weight: normal;">Autodesk AEC Solutions Division Headquarters is one of the few projects that have been fully developed through Integrated Project Delivery. Below is a summary of the study released by the AIA California Council in 2010.</span></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><a href="http://www.digitalfutures.info/wp-content/uploads/2010/04/CaseStudy.jpg"><img class="aligncenter size-full wp-image-1136" title="CaseStudy" src="http://www.digitalfutures.info/wp-content/uploads/2010/04/CaseStudy.jpg" alt="CaseStudy" width="600" height="400" /></a><a href="http://www.digitalfutures.info/wp-content/uploads/2010/04/ProjectData.jpg"><img class="aligncenter size-full wp-image-1137" title="ProjectData" src="http://www.digitalfutures.info/wp-content/uploads/2010/04/ProjectData.jpg" alt="ProjectData" width="600" height="790" /></a></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong>Early Involvement of Key Participants</strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><span style="font-weight: normal;">Autodesk conducted a selection process to find an architect/builder team willing to try Integrated Project Delivery. The RFP clearly stated the owner’s direction in terms of scope, budget, sustainability goals and the mandated form of agreement. At first, another team was the front runner but their corporate leadership asked for fundamental changes in the proposed IPD arrangement which Autodesk declined to make. In the end, KlingStubbins and Tocci were chosen because of their qualifications, familiarity with the local market, BIM and LEED sophistication, and willingness to abide by a “true” IPD agreement. But another factor was their proposal to allocate fees and incentives within the fixed project budget. Three major subcontractors were also selected early and included in the risk/reward structure.</span></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p style="display: inline !important;"><span style="font-weight: normal;"><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></span></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong>Shared Risk/Reward</strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><span style="font-weight: normal;">The contract establishes an Incentive Compensation Layer (ICL) in which the architects’ and builders’ anticipated profit is put at risk. If specific goals are met, designers and builders receive their normal profit, but jointly, not separately. If they are exceeded in measurable ways the firms are eligible for additional compensation. The ICL could adjust from minus 20% to plus 20% depending on whether project goals were met or exceeded.</span></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong>Multi-Party Contract</strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><span style="font-weight: normal;">The Integrated Project Delivery Agreement (IPDA) is a three-way contract between the owner, the architect and the builder. Each party’s success is directly tied to the performance of the others. Distinct roles and responsibilities are delineated in contract language and in a “responsibility matrix.” Major subcontractors (mechanical/fire protection, electrical, and drywall) were also brought in to the agreement, worked at cost, and shared in the incentive program.</span></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong>Collaborative Decision Making/Control</strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><span style="font-weight: normal;">By contract, three levels of collaborative teams were established to manage the project. A Project Implementation Team (PIT) was set up to handle the day-to-day issues of the project. The composition of the PIT included project participants whose work at any given time could impact the project’s outcome. A Project Management Team (PMT) with representation of the owner, architect, and builder, was established to manage the project and make decisions by consensus. If issues arose that could not be resolved by the PMT they were taken to a higher level for final resolution: a Senior Management Team, (SMT) again with representation of the three principal parties.</span></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong>Liability Waivers Among Key Participants:</strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><span style="font-weight: normal;">The parties waived all claims against each other except those arising from fraud, willful misconduct or gross negligence. Disputes were to be resolved by mediation or, if necessary, arbitration. Each party was required to maintain typical insurance but with the provision that policies be amended so that no right of subrogation (the ability to gain the rights belonging to one party against a third party who caused a loss) existed against the other partners.</span></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong>Jointly Developed/Validated Targets:</strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><span style="font-weight: normal;">The contract spelled out specific criteria that would be used to judge success. These included schedule and budget, sustainability, quality of craftsmanship, functionality, and design quality. Owner, architect, and builder jointly selected three comparable projects in the Boston area to serve as benchmarks against which these goals would be measured. It was agreed – after some hesitation from the team &#8211; that an independent evaluator (in this case an architecture professor) would be the arbiter of how successfully the project met the design quality criteria. There was a scorecard and the process was made as objective as possible.</span></p>
<p style="display: inline !important;"><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><a href="http://www.digitalfutures.info/wp-content/uploads/2010/04/End.jpg"><img class="aligncenter size-full wp-image-1138" title="End" src="http://www.digitalfutures.info/wp-content/uploads/2010/04/End.jpg" alt="End" width="585" height="275" /></a></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p style="display: inline !important;">
<p style="display: inline !important;">
<p style="display: inline !important;">
<p style="display: inline !important;">
<p style="display: inline !important;">
<p style="display: inline !important;">
<p style="display: inline !important;"><span style="font-weight: normal;"><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><br />
</strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></span></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong> </strong></p>
<p><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></p>
<p style="display: inline !important;"><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong><strong> </strong></strong></strong></strong></strong></p>
<p><strong><strong><strong><strong> </strong></strong></strong></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.digitalfutures.info/1/integrated-project-delivery-bim /feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>REVIT: Hot Keys for Revit 2010</title>
		<link>http://www.digitalfutures.info/1/revit-hot-keys-for-revit-2010 /</link>
		<comments>http://www.digitalfutures.info/1/revit-hot-keys-for-revit-2010 /#comments</comments>
		<pubDate>Thu, 25 Feb 2010 03:50:04 +0000</pubDate>
		<dc:creator>RSarrach</dc:creator>
				<category><![CDATA[-]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[hot key]]></category>
		<category><![CDATA[Revit]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://www.digitalfutures.info/?p=943</guid>
		<description><![CDATA[Hot Keys for Revit 2010-get them while they are hot….]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.digitalfutures.info/wp-content/uploads/2010/02/Revit-logo.jpg"><img class="aligncenter size-full wp-image-944" title="Revit-logo" src="http://www.digitalfutures.info/wp-content/uploads/2010/02/Revit-logo.jpg" alt="Revit-logo" width="550" height="401" /></a></p>
<p>Hot Keys for <strong>Revit 2010</strong>-get them while they are hot….</p>
<p><span id="more-9101"> </span></p>
<p>Modeling menu</p>
<p><strong>File menu</strong></p>
<p>“ER” menu:”File-Editing Requests”<br />
“RL” menu:”File-Reload Latest”&#8221;RW” menu:”File-Reload Latest”</p>
<p><strong>Edit menu</strong></p>
<p>“DE” menu:”Edit-Delete”<br />
“MD” menu:”Edit-Modify”<br />
“SA” menu:”Edit-Select All Instances”<br />
“MV” menu:”Edit-Move”<br />
“CO” menu:”Edit-Copy”<br />
“RO” menu:”Edit-Rotate”<br />
“AR” menu:”Edit-Array”<br />
“MM” menu:”Edit-Mirror”<br />
“RE” menu:”Edit-Resize”<br />
“GP” menu:”Edit-Group-Create Group”<br />
“EG” menu:”Edit-Group-Edit Group”<br />
“UG” menu:”Edit-Group-Ungroup”<br />
“LG” menu:”Edit-Group-Link Group”<br />
“EX” menu:”Edit-Group-Exclude Member”<br />
“MP” menu:”Edit-Group-Move Member to Project”<br />
“RB” menu:”Edit-Group-Restore Excluded Member”<br />
“RA” menu:”Edit-Group-Restore All”<br />
“AP” menu:”Edit-Group-Add to Group”<br />
“RG” menu:”Edit-Group-Remove from Group”<br />
“AD” menu:”Edit-Group-Attach Detail”<br />
“PG” menu:”Edit-Group-Group Properties”<br />
“FG” menu:”Edit-Group-Finish Group”<br />
“CG” menu:”Edit-Group-Cancel Group”<br />
“PP” menu:”Edit-Pin Position”<br />
“UP” menu:”Edit-Unpin Position”<br />
“CS” menu:”Edit-Create Similar”&#8221;PR” menu:”Edit-Properties”</p>
<p><strong>View menu</strong></p>
<p>“ZR” menu:”View-Zoom-Zoom In Region”<br />
“ZO” menu:”View-Zoom-Zoom Out (2x)”<br />
“ZF” menu:”View-Zoom-Zoom To Fit”<br />
“ZE” menu:”View-Zoom-Zoom To Fit”<br />
“ZA” menu:”View-Zoom-Zoom All To Fit”<br />
“ZS” menu:”View-Zoom-Sheet Size”<br />
“ZP” menu:”View-Zoom-Previous Scroll/Zoom”<br />
“VP” menu:”View-View Properties”F8 menu:”View-Dynamically Modify View<br />
“VG” menu:”View-Visibility/Graphics”<br />
“HH” menu:”View-Temporary Hide/Isolate-Hide Element”<br />
“HI” menu:”View-Temporary Hide/Isolate-Isolate Element”<br />
“HC” menu:”View-Temporary Hide/Isolate-Hide Category”<br />
“IC” menu:”View-Temporary Hide/Isolate-Isolate Category”<br />
“HR” menu:”View-Temporary Hide/Isolate-Reset Temporary Hide/Isolate”<br />
“EH” menu:”View-Hide in view-Elements”<br />
“VH” menu:”View-Hide in view-Category”<br />
“EU” menu:”View-Unhide in view-Elements”<br />
“VU” menu:”View-Unhide in view-Category”<br />
“WF” menu:”View-Wireframe”<br />
“HL” menu:”View-Hidden Line”&#8221;SD” menu:”View-Shading with Edges”<br />
“AG” menu:”View-Advanced Model Graphics”&#8221;TL” menu:”View-Thin Lines”<br />
“RR” menu:”View-Rendering-Raytrace”<br />
F5 menu:”View-Refresh”</p>
<p><strong>Modeling menu</strong></p>
<p>“DR” menu:”Modelling-Door”<br />
“WN” menu:”Modelling-Window”&#8221;CM” menu:”Modelling-Component”<br />
“LI” menu:”Modelling-Lines”<br />
“RP” menu:”Modelling-Ref Plane”</p>
<p><strong>Drafting menu</strong></p>
<p>“DI” menu:”Drafting-Dimension”<br />
“EL” menu:”Drafting-Spot Dimension-Spot Elevation”<br />
“TX” menu:”Drafting-Text”<br />
“GR” menu:”Drafting-Grid”<br />
“LL” menu:”Drafting-Level”<br />
“TG” menu:”Drafting-Tag-By Category”<br />
“RM” menu:”Drafting-Room”<br />
“RT” menu:”Drafting-Room Tag”<br />
“DL” menu:”Drafting-Detail Lines”</p>
<p><strong>Site menu</strong></p>
<p><strong>Tools menu</strong></p>
<p>F7 menu:”Tools-Spelling”<br />
“MA” menu:”Tools-Match”<br />
“LW” menu:”Tools-Linework”<br />
“PT” menu:”Tools-Paint”<br />
“SF” menu:”Tools-Split Face”<br />
“AL” menu:”Tools-Align”<br />
“SL” menu:”Tools-Split Walls and Lines”<br />
“TR” menu:”Tools-Trim/Extend”<br />
“OF” menu:”Tools-Offset”</p>
<p><strong>Settings menu</strong></p>
<p>“SU” menu:”Settings-Sun and Shadows Settings”<br />
“UN” menu:”Settings-Project Units”</p>
<p><strong>Window menu<br />
</strong><br />
“WC” menu:”Window-Cascade”<br />
“WT” menu:”Window-Tile”</p>
<p><strong>Help menu</strong></p>
<p><strong>Snap overrides</strong></p>
<p>“SI” snapcode:”Intersections”<br />
“SE” snapcode:”Endpoints”<br />
“SM” snapcode:”Midpoints”<br />
“SC” snapcode:”Centers”<br />
“SN” snapcode:”Nearest”<br />
“SP” snapcode:”Perpendicular”<br />
“ST” snapcode:”Tangents”<br />
“SW” snapcode:”Work Plane Grid”<br />
“SQ” snapcode:”Quadrants”<br />
“SX” snapcode:”Points”<br />
“SR” snapcode:”Snap to Remote Objects”<br />
“SO” snapcode:”Snaps Off”<br />
“SS” snapcode:”Turn Override Off”</p>
<p><strong>Alternates with closer key spacing</strong></p>
<p>“ZZ” menu:”View-Zoom-Zoom In Region”<br />
“ZX” menu:”View-Zoom-Zoom To Fit”<br />
“ZC” menu:”View-Zoom-Previous Scroll/Zoom”<br />
“ZV” menu:”View-Zoom-Zoom Out (2x)”<br />
“VV” menu:”View-Visibility/Graphics”<br />
“CC” menu:”Edit-Copy”</p>
<p>via <a href="http://www.core.form-ula.com/">core.form-ula</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.digitalfutures.info/1/revit-hot-keys-for-revit-2010 /feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Workshop : Maxwell Render Bootcamp V001</title>
		<link>http://www.digitalfutures.info/1/workshop-maxwell-render-bootcamp-v001 /</link>
		<comments>http://www.digitalfutures.info/1/workshop-maxwell-render-bootcamp-v001 /#comments</comments>
		<pubDate>Mon, 09 Nov 2009 05:41:56 +0000</pubDate>
		<dc:creator>RSarrach</dc:creator>
				<category><![CDATA[-]]></category>
		<category><![CDATA[Computation]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[maxwell]]></category>
		<category><![CDATA[pratt]]></category>
		<category><![CDATA[rhino]]></category>
		<category><![CDATA[richard sarrach]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[workshop]]></category>

		<guid isPermaLink="false">http://www.digitalfutures.info/?p=692</guid>
		<description><![CDATA[
Title- Basic lighting &#38; work-flow in Maxwell render
Conductor-  Richard Sarrach
Description- ...]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.digitalfutures.info/wp-content/uploads/2009/11/Screen-shot-2009-11-08-at-10.40.36-PM.png"><img class="aligncenter size-full wp-image-693" title="Screen shot 2009-11-08 at 10.40.36 PM" src="http://www.digitalfutures.info/wp-content/uploads/2009/11/Screen-shot-2009-11-08-at-10.40.36-PM.png" alt="Screen shot 2009-11-08 at 10.40.36 PM" width="514" height="588" /></a><br />
<strong>Title</strong>- Basic lighting &amp; work-flow in Maxwell render</p>
<p><strong>Conductor</strong>-  Richard Sarrach</p>
<p><strong>Description</strong>- Workshop will cover work-flow and basic rendering in Maxwell. Maxwell Render is a rendering engine based on the mathematical equations governing light transport, meaning that all elements, such as emitters, materials and cameras, are derived from physically accurate models. Maxwell Render is unbiased, so no tricks are used to calculate the lighting solution in every pixel of a scene; the result will always be a correct solution, as it would be in the real world. Maxwell Render can fully capture all light interactions between all elements in a scene, and all lighting calculations are performed using spectral information and high dynamic range data.</p>
<p><strong>Location</strong>- HHN 308 (TBD)</p>
<p><strong>Date + Time</strong>- 2009.11.09 (6:30-9:30pm)  Requirements- Participants are required to bring a laptop with the following software installed:</p>
<p><strong>Maxwell Render V1.7</strong> &gt;&gt;&gt; <a href="http://www.maxwellrender.com/mw2_demo_sec.php" target="_blank">TRIAL</a></p>
<p><strong>Workshop Base Files </strong>&gt;&gt;&gt; <a href="http://www.digitalfutures.info/wp-content/uploads/2009/11/df-workshop-maxwell-v001.rar">df workshop maxwell v001</a></p>
<p>Credits: Mihai Iliuta</p>
]]></content:encoded>
			<wfw:commentRss>http://www.digitalfutures.info/1/workshop-maxwell-render-bootcamp-v001 /feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Workshop: An Introduction to MEL &amp; Expressions in Maya</title>
		<link>http://www.digitalfutures.info/1/workshop-an-introduction-to-mel-expressions-in-maya /</link>
		<comments>http://www.digitalfutures.info/1/workshop-an-introduction-to-mel-expressions-in-maya /#comments</comments>
		<pubDate>Tue, 13 Oct 2009 05:33:47 +0000</pubDate>
		<dc:creator>RSarrach</dc:creator>
				<category><![CDATA[-]]></category>
		<category><![CDATA[Computation]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[Alex Loyer Hughes]]></category>
		<category><![CDATA[Expressions]]></category>
		<category><![CDATA[maya]]></category>
		<category><![CDATA[pratt]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[scripting]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[workshop]]></category>

		<guid isPermaLink="false">http://www.digitalfutures.info/?p=636</guid>
		<description><![CDATA[
 
Title- An Introduction to MEL &#38; Expressions in Maya.
 



Conductor: Alex ...]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.digitalfutures.info/wp-content/uploads/2009/10/df-maya-2.jpg"><img class="aligncenter size-full wp-image-635" title="df-maya-2" src="http://www.digitalfutures.info/wp-content/uploads/2009/10/df-maya-2.jpg" alt="df-maya-2" width="575" height="512" /></a></p>
<p><span style="font-family: Arial,Helvetica,sans-serif; font-size: 12px; color: #333333; line-height: 19px;"> </span></p>
<p style="border-width: 0px; margin: 0px 0px 10px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: 12px; font-family: inherit; vertical-align: baseline;"><span style="border-width: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: small; font-family: Calibri; vertical-align: baseline;"><strong style="font-weight: bold;">Title-</strong> An Introduction to MEL &amp; Expressions in Maya.</span></p>
<p style="border-width: 0px; margin: 0px 0px 10px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: 12px; font-family: inherit; vertical-align: baseline;"><span style="border-collapse: separate; color: #000000; font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"> </span></p>
<div style="word-wrap: break-word;"><span style="border-collapse: separate; color: #000000; font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"></p>
<div style="word-wrap: break-word;"><span style="border-collapse: separate; color: #000000; font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><span style="border-collapse: separate; color: #000000; font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"></p>
<div style="margin: 0px;">
<div><strong>Conductor</strong>: Alex Loyer Hughes</div>
</div>
<p></span></span></div>
<p></span></div>
<p><span style="border-collapse: separate; color: #000000; font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"> </span></p>
<p style="border-width: 0px; margin: 0px 0px 10px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: 12px; font-family: inherit; vertical-align: baseline;"><span style="border-width: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: small; font-family: Calibri; vertical-align: baseline;"><strong style="font-weight: bold;">Description- </strong>This workshop will serve as an introduction to MEL (MAYA EMBEDDED LANGUAGE) and its use through the command line, script editor and expression editor.  Participants will be introduced to scripting logic within the Maya platform and how this logic can be harnessed to create geometrical complexity.  Topics covered will include interface and navigation within Maya, fundamentals of variables, attributes, custom attributes and expressions. Emphasis will be placed on understanding how to harness these tools and effectively implement them through a series of architecturally relevant modeling exercises.</span></p>
<p style="border-width: 0px; margin: 0px 0px 10px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: 12px; font-family: inherit; vertical-align: baseline;"><span style="border-width: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: small; font-family: Calibri; vertical-align: baseline;"><strong style="font-weight: bold;">Location-</strong> HHN 308 (TBD)</span></p>
<p style="border-width: 0px; margin: 0px 0px 10px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: 12px; font-family: inherit; vertical-align: baseline;"><span style="border-width: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: small; font-family: Calibri; vertical-align: baseline;"><strong style="font-weight: bold;">Date + Time- </strong>2009.11.02(6-9pm)<br />
</span></p>
<p style="border-width: 0px; margin: 0px 0px 10px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: 12px; font-family: inherit; vertical-align: baseline;"><span style="border-width: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: small; font-family: Calibri; vertical-align: baseline;"><strong style="font-weight: bold;">Requirements- </strong>Participants are required to bring a laptop with the following software installed:</span></p>
<p style="border-width: 0px; margin: 0px 0px 10px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: 12px; font-family: inherit; vertical-align: baseline;"><a href="http://usa.autodesk.com/adsk/servlet/pc/index?siteID=123112&amp;id=13577897"><span style="border-width: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: small; font-family: Calibri; vertical-align: baseline;"><em style="border-width: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: italic; font-size: 13px; font-family: inherit; vertical-align: baseline;">Autodesk Maya 2009</em></span></a></p>
<p style="border-width: 0px; margin: 0px 0px 10px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: 12px; font-family: inherit; vertical-align: baseline;"><span style="border-width: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: inherit; font-size: small; font-family: Calibri; vertical-align: baseline;"><em style="border-width: 0px; margin: 0px; padding: 0px; font-weight: inherit; font-style: italic; font-size: 13px; font-family: inherit; vertical-align: baseline;"><a href="http://usa.autodesk.com/adsk/servlet/pc/index?siteID=123112&amp;id=13578047">Trial link</a><br />
</em></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.digitalfutures.info/1/workshop-an-introduction-to-mel-expressions-in-maya /feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OPENING: Pike Loop, a Robot-Built Installation in NYC</title>
		<link>http://www.digitalfutures.info/1/opening-pike-loop-a-robot-built-installation-in-nyc /</link>
		<comments>http://www.digitalfutures.info/1/opening-pike-loop-a-robot-built-installation-in-nyc /#comments</comments>
		<pubDate>Tue, 29 Sep 2009 16:42:04 +0000</pubDate>
		<dc:creator>RSarrach</dc:creator>
				<category><![CDATA[-]]></category>
		<category><![CDATA[Fabrication]]></category>
		<category><![CDATA[Research]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[applied]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[materials]]></category>
		<category><![CDATA[prototyping]]></category>
		<category><![CDATA[manufacturing]]></category>
		<category><![CDATA[robot]]></category>
		<category><![CDATA[Storefront for Art and Architecture]]></category>
		<category><![CDATA[tool]]></category>

		<guid isPermaLink="false">http://www.digitalfutures.info/?p=433</guid>
		<description><![CDATA[
In September 2009, Storefront for Art and Architecture will inaugurate ...]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://www.digitalfutures.info/wp-content/uploads/2009/09/Screen-shot-2009-09-29-at-1.11.16-PM.png"><img class="aligncenter size-full wp-image-437" title="Screen shot 2009-09-29 at 1.11.16 PM" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/Screen-shot-2009-09-29-at-1.11.16-PM.png" alt="Screen shot 2009-09-29 at 1.11.16 PM" width="695" height="384" /></a></p>
<p>In September 2009, <a href="http://www.storefrontnews.org/exhib_dete.php?exID=152">Storefront for Art and Architecture</a> will inaugurate an exhibition of the work of Swiss architects <strong><a href="http://www.gramaziokohler.com/">Gramazio &amp; Kohler</a></strong>, Architecture and Digital Fabrication, ETH Zurich and, in conjunction with NYC Department of Transportation’s Urban Art Program, Storefront will present the first architecture project to be digitally fabricated on site, at 1:1 scale, in the US.</p>
<p>Developed through their research at ETH Zürich Faculty of Architecture, Gramazio &amp; Kohler&#8217;s work explores highly complex architectural artifacts, built by industrial robots typically used to assemble automobiles and perform other high-precision tasks. The accuracy, strength and speed of these robots allow them to fabricate architectural forms of unprecedented complexity and intricacy.</p>
<p>Gramazio &amp; Kohler&#8217;s work represents the cutting edge of innovation in the field of digital fabrication in architecture. For many years architects have relied on digital manufacturing processes such as CNC milling or 3D printing as a tool for formal research at model-scale. For the first time, Gramazio &amp; Kohler’s work explores the potential of mobile digital fabrication techniques that can fabricate at 1:1 scale on site.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.digitalfutures.info/1/opening-pike-loop-a-robot-built-installation-in-nyc /feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Maya SubD Workshop I</title>
		<link>http://www.digitalfutures.info/1/maya-subd-workshop-i /</link>
		<comments>http://www.digitalfutures.info/1/maya-subd-workshop-i /#comments</comments>
		<pubDate>Thu, 24 Sep 2009 05:19:03 +0000</pubDate>
		<dc:creator>RSarrach</dc:creator>
				<category><![CDATA[-]]></category>
		<category><![CDATA[Computation]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[parametric]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[Grasshopper]]></category>
		<category><![CDATA[maya]]></category>
		<category><![CDATA[pratt]]></category>
		<category><![CDATA[rhino]]></category>
		<category><![CDATA[rhino3d]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[scripting]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[workshop]]></category>

		<guid isPermaLink="false">http://www.digitalfutures.info/?p=420</guid>
		<description><![CDATA[


Title- Subdivision Surface Modeling  in Maya: techniques and workflow
Description- ...]]></description>
			<content:encoded><![CDATA[<div style="margin: 1ex;">
<div>
<p><a href="http://www.digitalfutures.info/wp-content/uploads/2009/09/digital-Futures_Working-with-subD.jpg"><img class="aligncenter size-full wp-image-421" title="digital-Futures_Working-with-subD" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/digital-Futures_Working-with-subD.jpg" alt="digital-Futures_Working-with-subD" width="575" height="288" /></a></p>
<p><span style="font-family: Calibri; font-size: small;"><strong>Title-</strong> Subdivision Surface Modeling  in Maya: techniques and workflow</span></p>
<p><span style="font-family: Calibri; font-size: small;"><strong>Description- </strong> The workshop will serve as an introduction to working with SubD surfaces  in Maya.  Participants will be introduced to the subdivision surface  modeling paradigm within Maya and how it relates to polygon mesh modeling.   Topics covered will include interface and navigation within Maya, fundamentals  of Mesh modeling, fundamentals of SubD modeling, as well as incorporating  content from Rhino3D and Grasshopper into a productive workflow.   Emphasis will be placed on understanding how to harness these tools  and effectively implement them through a series of architecturally relevant  modeling exercises.</span></p>
<p><span style="font-family: Calibri; font-size: small;"><strong>Location-</strong> HHN 308</span></p>
<p><span style="font-family: Calibri; font-size: small;"><strong>Date + Time- </strong> 2009.09.28(7-10pm)<br />
</span></p>
<p><span style="font-family: Calibri; font-size: small;"><strong>Requirements- </strong> Participants are required to bring a laptop with the following software  installed:</span></p>
<p><span style="font-family: Calibri; font-size: small;"><em>Autodesk Maya 2009</em></span></p>
<p><span style="font-family: Calibri; font-size: small;"><em>Rhino3D (SR6)</em></span></p>
<p><span style="font-family: Calibri; font-size: small;"><em>Grasshopper (v0.6.0019)</em></span></div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.digitalfutures.info/1/maya-subd-workshop-i /feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>fundamentals of surface modeling</title>
		<link>http://www.digitalfutures.info/1/fundamentals-of-surface-modeling /</link>
		<comments>http://www.digitalfutures.info/1/fundamentals-of-surface-modeling /#comments</comments>
		<pubDate>Mon, 21 Sep 2009 04:24:47 +0000</pubDate>
		<dc:creator>RSarrach</dc:creator>
				<category><![CDATA[-]]></category>
		<category><![CDATA[Analysis]]></category>
		<category><![CDATA[modeling]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[angential continuity]]></category>
		<category><![CDATA[CAD]]></category>
		<category><![CDATA[Curvature]]></category>
		<category><![CDATA[Curvature continuity]]></category>
		<category><![CDATA[drawing]]></category>
		<category><![CDATA[form]]></category>
		<category><![CDATA[Positional]]></category>
		<category><![CDATA[Positional continuity]]></category>
		<category><![CDATA[rhino]]></category>
		<category><![CDATA[rhino3d]]></category>
		<category><![CDATA[studies]]></category>
		<category><![CDATA[surface]]></category>
		<category><![CDATA[Tangential]]></category>
		<category><![CDATA[tool]]></category>

		<guid isPermaLink="false">http://www.digitalfutures.info/?p=368</guid>
		<description><![CDATA[
We will be placing tutorials &#38; base files  for ...]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.digitalfutures.info/wp-content/uploads/2009/09/8ContinuityTable-no-header.jpg"><img class="aligncenter size-full wp-image-365" title="8ContinuityTable-no-header" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/8ContinuityTable-no-header.jpg" alt="8ContinuityTable-no-header" width="468" height="328" /></a></p>
<div style="text-align: left;">We will be placing tutorials &amp; base files  for all <strong>7</strong> forms in the &#8220;<em>periodic table of form</em>&#8220;<strong> </strong>(located above)<strong> </strong>up on <strong><em>df</em></strong><em>. </em>The text below is an excerpt from the <a href="http://www.core77.com/blog/featured_items/a_periodic_table_of_form_the_secret_language_of_surface_and_meaning_in_product_design_by_gray_holland_12752.asp">core 77</a> article entitled<em> &#8220;</em>A Periodic Table of Form: the secret language of surface and meaning in product design&#8221;, by Gray Holland. It serves as a wonderful conceptual bootstrapping mechanism for our <a href="http://www.digitalfutures.info/1/rhino-bootcamp-level-i-workshop%20/">Rhino Boot-Camp Workshop 001</a>.</div>
<div style="text-align: left;">-</div>
<div style="text-align: left;">
<p><em>&#8220;If there is an empirical meaning behind form then, how does it manifest across the natural and into the man-made world? Going further with this notion, let&#8217;s deconstruct the meaning of form naturally, and then distill that meaning into some simplified geometric categories technically. In order to define these categories, I will ironically employ a three-level definition of surface continuity from the engineering CAD lexicon: <strong>Positional</strong>, <strong>Tangential</strong>, and <strong>Curvature </strong>continuities.</em></p>
<p><em>It&#8217;s useful to think of these three types as steps in a ladder, with each building on the definition of the last. <strong>Positional continuity [C<sup>0</sup> or G<sup>0</sup>]</strong> refers to the hard edge created when 2 surfaces intersect. <strong>Tangential continuity [C<sup>1</sup> or G<sup>1</sup>]</strong> is the next level, defined by a circular arc creating a relatively smooth transition between these surfaces. The quality of this transition is best visualized by a straight line drawn between two circles: the line&#8217;s only point of contact with each circle is tangential. This level of continuity is often described as a basic fillet in most solid modeling systems. Although smooth, there is a characteristic &#8220;break line&#8221; of tangency denoting where the circle meets the line.</em></p>
<p><em><strong>Curvature continuity [C<sup>2</sup> or G<sup>2</sup>]</strong> is a bit trickier to describe. Technically, it occurs when the rate of curvature between 2 continuous surfaces are the same. Visually, it is when one cannot tell when one surface ends and another begins. In the CAD world this is often referred to as </em><em>class A surfacing, and is the domain of surface-based modeling software like Alias, Rhino, and Catia. The primary benefit of Curvature&#8217;s quality is the ability to control smooth reflections across multiple surfaces, generating the elegant sculptural results necessary in the automotive industry. The technical renderings below illustrate these visual qualities better than any verbal description could. Please pay attention to the subtle differences, particularly the Tangential line marking the fillet&#8217;s point of contact with its adjacent surface, and how the reflections break there as well.&#8221; </em></p>
<p><em>-<br />
</em></p>
<p><em> </em>To read the rest of the article please go to <a href="http://www.core77.com/blog/featured_items/a_periodic_table_of_form_the_secret_language_of_surface_and_meaning_in_product_design_by_gray_holland_12752.asp">core 77 </a>.</p>
<p style="text-align: center;"><img class="aligncenter" src="http://s3files.core77.com/blog/images/3surface.jpg" alt="3surface.jpg" width="468" height="351" /></p>
<p style="text-align: center;">Image via core77</p>
<p><a href="http://www.digitalfutures.info/wp-content/uploads/2009/09/4tech.jpg"><img class="aligncenter size-full wp-image-367" title="4tech" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/4tech.jpg" alt="4tech" width="468" height="366" /></a></p>
<p style="text-align: center;">Image via core77</p>
<p>The periodic table of from was originally posted on <a href="http://www.core77.com/blog/featured_items/a_periodic_table_of_form_the_secret_language_of_surface_and_meaning_in_product_design_by_gray_holland_12752.asp">core 77 </a>.</p>
<p>Download the full size pdf of the table here&gt;&gt;&gt; <a href="http://www.digitalfutures.info/wp-content/uploads/2009/09/PeriodicTable-Form2.pdf" target="_blank">PeriodicTable-Form</a></p>
<p><a href="../wp-content/uploads/2009/09/PeriodicTable-Form-1.pdf"></a></div>
]]></content:encoded>
			<wfw:commentRss>http://www.digitalfutures.info/1/fundamentals-of-surface-modeling /feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rhino Bootcamp Level I workshop</title>
		<link>http://www.digitalfutures.info/1/rhino-bootcamp-level-i-workshop /</link>
		<comments>http://www.digitalfutures.info/1/rhino-bootcamp-level-i-workshop /#comments</comments>
		<pubDate>Sun, 20 Sep 2009 22:29:10 +0000</pubDate>
		<dc:creator>RSarrach</dc:creator>
				<category><![CDATA[-]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[drawing]]></category>
		<category><![CDATA[rhino]]></category>
		<category><![CDATA[rhino3d]]></category>
		<category><![CDATA[richard sarrach]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[workshop]]></category>

		<guid isPermaLink="false">http://www.digitalfutures.info/?p=360</guid>
		<description><![CDATA[
Description: In this introductory workshop we will cover basic surface ...]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.digitalfutures.info/wp-content/uploads/2009/09/Rhino-boot-camp.jpg"><img class="aligncenter size-full wp-image-361" title="Rhino-boot-camp" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/Rhino-boot-camp.jpg" alt="Rhino-boot-camp" width="600" height="347" /></a></p>
<p><strong>Description:</strong> In this introductory workshop we will cover basic surface modeling and discuss general modeling approaches relating specifically to Rhino 3D Software. Students will learn how to import 2D drawings, create/edit accurate free-form 3-D NURBS curves/surfaces and extract 2D information such as sections, elevations and screenshots.<br />
<strong><br />
Location</strong>:<br />
Room HHS 416</p>
<p><strong>Date + Time</strong>:<br />
2009.09.21 (6:30-9:30PM)</p>
<p><strong>Requirements</strong>:</p>
<p>Participants are required to bring a laptop with Rhino3D, Illustrator + Photoshop</p>
<p><strong>Rhino3d download:</strong></p>
<p><a href="http://download.rhino3d.com/eval/?p=25">http://download.rhino3d.com/eval/?p=25</a></p>
<p><span style="color: #000000;"><strong>Rhino3d base files:</strong></span></p>
<p><strong><a href="http://www.digitalfutures.info/wp-content/uploads/2009/09/df-rhino-workshop-base-file-092109.3dm.zip">df rhino workshop base file 092109.3dm</a><br />
</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.digitalfutures.info/1/rhino-bootcamp-level-i-workshop /feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>9sq grid</title>
		<link>http://www.digitalfutures.info/1/9sq-grid /</link>
		<comments>http://www.digitalfutures.info/1/9sq-grid /#comments</comments>
		<pubDate>Sun, 20 Sep 2009 05:07:20 +0000</pubDate>
		<dc:creator>RSarrach</dc:creator>
				<category><![CDATA[-]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[file]]></category>
		<category><![CDATA[grid]]></category>
		<category><![CDATA[help]]></category>
		<category><![CDATA[illustrator]]></category>
		<category><![CDATA[tool]]></category>
		<category><![CDATA[tools]]></category>

		<guid isPermaLink="false">http://www.digitalfutures.info/?p=344</guid>
		<description><![CDATA[
18″x18″ 9 square grid
9 square grid template 
rar/zip files contains ...]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.digitalfutures.info/wp-content/uploads/2009/09/9sq_v000.jpg"><img class="aligncenter size-full wp-image-345" title="9sq_v000" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/9sq_v000.jpg" alt="9sq_v000" width="430" height="430" /></a></p>
<p>18″x18″ <strong>9 square grid</strong></p>
<p><a title="9squaregridtemplate.rar" href="http://www.core.form-ula.com/wp-content/uploads/2008/02/9squaregridtemplate.rar">9 square grid template </a></p>
<p>rar/zip files contains an AI template that can be edited in Adobe Illustrator</p>

<a href='http://www.digitalfutures.info/1/9sq-grid /attachment/9sq_v0041/' title='9sq_v0041'><img width="150" height="150" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/9sq_v0041-150x150.jpg" class="attachment-thumbnail" alt="" title="9sq_v0041" /></a>
<a href='http://www.digitalfutures.info/1/9sq-grid /attachment/9sq_v007/' title='9sq_v007'><img width="150" height="150" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/9sq_v007-150x150.jpg" class="attachment-thumbnail" alt="" title="9sq_v007" /></a>
<a href='http://www.digitalfutures.info/1/9sq-grid /attachment/9sq_v006/' title='9sq_v006'><img width="150" height="150" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/9sq_v006-150x150.jpg" class="attachment-thumbnail" alt="" title="9sq_v006" /></a>
<a href='http://www.digitalfutures.info/1/9sq-grid /attachment/9sq_v005/' title='9sq_v005'><img width="150" height="150" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/9sq_v005-150x150.jpg" class="attachment-thumbnail" alt="" title="9sq_v005" /></a>
<a href='http://www.digitalfutures.info/1/9sq-grid /attachment/9sq_v003/' title='9sq_v003'><img width="150" height="150" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/9sq_v003-150x150.jpg" class="attachment-thumbnail" alt="" title="9sq_v003" /></a>
<a href='http://www.digitalfutures.info/1/9sq-grid /attachment/9sq_v002/' title='9sq_v002'><img width="150" height="150" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/9sq_v002-150x150.jpg" class="attachment-thumbnail" alt="" title="9sq_v002" /></a>
<a href='http://www.digitalfutures.info/1/9sq-grid /attachment/9sq_v001/' title='9sq_v001'><img width="150" height="150" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/9sq_v001-150x150.jpg" class="attachment-thumbnail" alt="" title="9sq_v001" /></a>
<a href='http://www.digitalfutures.info/1/9sq-grid /attachment/9sq_v000/' title='9sq_v000'><img width="150" height="150" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/9sq_v000-150x150.jpg" class="attachment-thumbnail" alt="" title="9sq_v000" /></a>

]]></content:encoded>
			<wfw:commentRss>http://www.digitalfutures.info/1/9sq-grid /feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rhino3d Image Reader Script</title>
		<link>http://www.digitalfutures.info/1/rhino3d-image-reader-script /</link>
		<comments>http://www.digitalfutures.info/1/rhino3d-image-reader-script /#comments</comments>
		<pubDate>Thu, 10 Sep 2009 00:53:48 +0000</pubDate>
		<dc:creator>RSarrach</dc:creator>
				<category><![CDATA[-]]></category>
		<category><![CDATA[Computation]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[3d]]></category>
		<category><![CDATA[David Mans]]></category>
		<category><![CDATA[rhino]]></category>
		<category><![CDATA[rhino3d]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[tool]]></category>

		<guid isPermaLink="false">http://www.digitalfutures.info/?p=190</guid>
		<description><![CDATA[
Image reader tool for rhino3d from David Mans @ neoarchaic


]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.digitalfutures.info/wp-content/uploads/2009/09/Screen-shot-2009-09-09-at-8.13.54-PM.png"><img class="aligncenter size-full wp-image-188" title="Screen shot 2009-09-09 at 8.13.54 PM" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/Screen-shot-2009-09-09-at-8.13.54-PM.png" alt="Screen shot 2009-09-09 at 8.13.54 PM" /></a></p>
<p>Image reader tool for rhino3d from David Mans @ <a href="http://neoarchaic.net/archives/649">neoarchaic</a></p>
<div><div class="wp-synhighlighter-expanded"><a name="#codesyntax1"></a><a style="wp-synhighlighter-title" href="#codesyntax1"  onClick="javascript:wpContainer=this.parentNode.parentNode.getElementsByTagName('div')[1];	if(wpContainer.style.display=='none') {wpContainer.style.display=''; this.parentNode.className='wp-synhighlighter-expanded'} 	else {wpContainer.style.display='none'; this.parentNode.className='wp-synhighlighter-collapsed'}">Code</a></div><div class="wp-synhighlighter-inner"><pre class="vb" style="font-family:monospace;"><ol start="0"><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Option</span> <span style="color: #000080;">Explicit</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">'Script written by &lt;David Mans&gt;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">'adapted from work by Che Wei Wang</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">'www.cwwang.com</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">'Script copyrighted by &lt;NeoArchaic Studio&gt;</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">'Script version Tuesday, March 18, 2008 7:40:18 AM</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Call</span> Main()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Sub</span> Main()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> rows, cols, tol, height,unit</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> arrItems, arrValues, arrResults</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrItems = array(&quot;columns&quot;,&quot;rows&quot;,&quot;tolerance&quot;,&quot;maximum_height&quot;,&quot;unit_width&quot;)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrValues = array(10,10,0,10,10)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrResults = Rhino.PropertyListBox (arrItems, arrValues ,,&quot;Image Parameters&quot;)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cols = <span style="color: #000080;">CDbl</span>(arrResults(0))</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">rows = <span style="color: #000080;">CDbl</span>(arrResults(1))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> <span style="color: #000080;">CDbl</span>(arrResults(2)) &gt; 1 <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">tol = 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Else</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">tol = <span style="color: #000080;">CDbl</span>(arrResults(2))</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">height = <span style="color: #000080;">CDbl</span>(arrResults(3))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">unit = <span style="color: #000080;">CDbl</span>(arrResults(4))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> arrImg, arrExist, strInput</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrImg = arrImageSample(cols,rows)</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">' image outputs (0)red(1)green(2)blue(3)alpha(4)hue(5)saturation(6)luminance</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">strInput = Rhino.GetString(&quot;Select Image Reading Method&quot;,&quot;Normalized_Pannel&quot;,array(&quot;Banding&quot;,&quot;Segments&quot;,&quot;Cylinders&quot;,&quot;Horizontal_Plates&quot;,&quot;Faceted&quot;,&quot;Normalized_Pannel&quot;,&quot;Surface&quot;,&quot;PointCloud&quot;))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> isNull(strInput) <span style="color: #000080;">Then</span> <span style="color: #000080;">Exit</span> <span style="color: #000080;">Sub</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Call</span> Rhino.EnableRedraw(<span style="color: #000080;">False</span>)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> <span style="color: #000080;">CStr</span>(strInput) = &quot;Banding&quot; <span style="color: #000080;">Then</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrExist = banding(arrImg(6),tol,height,unit)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> <span style="color: #000080;">CStr</span>(strInput) = &quot;Segments&quot; <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrExist = segments(arrImg(6),tol,height,unit)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> <span style="color: #000080;">CStr</span>(strInput) = &quot;Cylinders&quot; <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrExist = cylinders(arrImg(6),tol,height,unit)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> <span style="color: #000080;">CStr</span>(strInput) = &quot;Horizontal_Plates&quot; <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrExist = plates(arrImg(6),tol,height,unit)</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> <span style="color: #000080;">CStr</span>(strInput) = &quot;Faceted&quot; <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrExist = loftPannels(arrImg(6),tol,height,unit)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> <span style="color: #000080;">CStr</span>(strInput) = &quot;Normalized_Pannel&quot; <span style="color: #000080;">Then</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrExist = uniformPannels(arrImg(6),tol,height,unit)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> <span style="color: #000080;">CStr</span>(strInput) = &quot;Surface&quot; <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrExist = surface(arrImg(6),height,unit)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> <span style="color: #000080;">CStr</span>(strInput) = &quot;PointCloud&quot; <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrExist = cloud(arrImg(0),arrImg(1),arrImg(2),arrImg(6),height,unit)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Call</span> Rhino.EnableRedraw(<span style="color: #000080;">True</span>)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">Sub</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Function</span> arrImageSample(cols, rows)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrImageSample = Null</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">'Instantiate the RhPicture Object</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> RhPicture : <span style="color: #000080;">Set</span> RhPicture = Rhino.GetPlugInObject(&quot;RhPicture&quot;)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> IsNull(RhPicture) <span style="color: #000080;">Then</span> <span style="color: #000080;">Exit</span> <span style="color: #000080;">Function</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">'Load an arbitrary image</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> <span style="color: #000080;">Not</span> RhPicture.LoadImage() <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Call</span> Rhino.<span style="color: #000080;">Print</span>(&quot;Image <span style="color: #000080;">not</span> loaded&quot;)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Exit</span> <span style="color: #000080;">Function</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">'Get the width and height</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> w : w = RhPicture.Width()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> h : h = RhPicture.Height()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> IsNull(w) <span style="color: #000080;">Or</span> IsNull(h) <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Call</span> Rhino.<span style="color: #000080;">Print</span>(&quot;No valid image data&quot;)</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Exit</span> <span style="color: #000080;">Function</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> x, y, i,j</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> r, g, b, a, hu, s, u</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> r(rows), g(rows), b(rows), a(rows), hu(rows), s(rows), u(rows)</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> rValSet, gValSet, bValSet, aValSet, hValSet, sValSet, uValSet</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> rValSet(cols), gValSet(cols), bValSet(cols), aValSet(cols), hValSet(cols), sValSet(cols), uValSet(cols)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">'Sample Image returning all values between zero and one</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> i = 0 <span style="color: #000080;">To</span> cols <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> j = 0 <span style="color: #000080;">To</span> rows <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">x = int(w/cols)*i</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">y = int(h/rows)*j</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> x&gt;w <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">x = w</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> y&gt;h <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">y = h</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r(j) = RhPicture.Red(x,y)/255</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">g(j) = RhPicture.Green(x,y)/255</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">b(j) = RhPicture.Blue(x,y)/255</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">a(j) = RhPicture.Alpha(x,y)/255</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">hu(j) = RhPicture.Hue(x,y)/360</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">s(j) = RhPicture.Saturation(x,y)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">u(j) = RhPicture.Luminance(x,y)</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">rValSet(i) = r</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">gValSet(i) = g</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">bValSet(i) = b</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">aValSet(i) = a</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">hValSet(i) = hu</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">sValSet(i) = s</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">uValSet(i) = u</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Set</span> RhPicture = <span style="color: #000080;">Nothing</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #008000;">' image outputs (0)red(1)green(2)blue(3)alpha(4)hue(5)saturation(6)luminance</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrImageSample = array(rValSet,gValSet,bValSet,aValSet,hValSet,sValSet,uValSet)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">Function</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Function</span> plates(arrInput,min,max,spacing)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">plates = Null</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> i,j,r,cols,rows</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cols = <span style="color: #000080;">uBound</span>(arrInput)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">rows = <span style="color: #000080;">uBound</span>(arrInput(0))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> mvPlane,plate()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r = 0</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> plate(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> i = 0 <span style="color: #000080;">To</span> cols-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> j = 0 <span style="color: #000080;">To</span> rows <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> arrInput(i)(j) &gt; min <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">mvPlane = Rhino.MovePlane(Rhino.WorldXYPlane(),array(spacing*i,spacing*j,max*arrInput(i)(j)))</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> <span style="color: #000080;">Preserve</span> plate(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">plate(r) = Rhino.AddPlaneSurface(mvPlane, spacing, spacing)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r =r+1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">plates = plate</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">Function</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Function</span> cylinders(arrInput,min,max,spacing)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cylinders = Null</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> i,j,r,cols,rows</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cols = <span style="color: #000080;">uBound</span>(arrInput)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">rows = <span style="color: #000080;">uBound</span>(arrInput(0))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> mvPlane,plate()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r = 0</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> plate(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> i = 0 <span style="color: #000080;">To</span> cols-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> j = 0 <span style="color: #000080;">To</span> rows <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> arrInput(i)(j) &gt; min <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">mvPlane = Rhino.MovePlane(Rhino.WorldXYPlane(),array(spacing*i,spacing*j,0))</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> <span style="color: #000080;">Preserve</span> plate(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">plate(r) = Rhino.AddCylinder(mvPlane(0), array(mvPlane(0)(0),mvPlane(0)(1),mvPlane(0)(2)+max*arrInput(i)(j)), spacing*.5)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r =r+1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cylinders = plate</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">Function</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Function</span> banding(arrInput,min,max,spacing)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">banding = Null</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> i,j,r,cols,rows</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cols = <span style="color: #000080;">uBound</span>(arrInput)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">rows = <span style="color: #000080;">uBound</span>(arrInput(0))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> mvPlane, pSet(),band()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> band(cols)</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> i = 0 <span style="color: #000080;">To</span> cols-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r = 0</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> pSet(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> j = 0 <span style="color: #000080;">To</span> rows <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> arrInput(i)(j) &gt; min <span style="color: #000080;">Then</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">mvPlane = Rhino.MovePlane(Rhino.WorldXYPlane(),array(spacing*i,spacing*j,max*arrInput(i)(j)))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> <span style="color: #000080;">Preserve</span> pSet(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">pSet(r) = mvPlane(0)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r =r+1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">band(i) = Rhino.AddInterpCurve(pSet)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">banding = band</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">Function</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Function</span> surface(arrInput,max,spacing)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">surface = Null</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> i,j,r,cols,rows</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cols = <span style="color: #000080;">uBound</span>(arrInput)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">rows = <span style="color: #000080;">uBound</span>(arrInput(0))</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> mvPlane, pSet()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r = 0</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> pSet(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> i = 0 <span style="color: #000080;">To</span> cols-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> j = 0 <span style="color: #000080;">To</span> rows-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">mvPlane = Rhino.MovePlane(Rhino.WorldXYPlane(),array(spacing*i,spacing*j,max*arrInput(i)(j)))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> <span style="color: #000080;">Preserve</span> pSet(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">pSet(r) = mvPlane(0)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r =r+1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Call</span> Rhino.AddSrfPtGrid(array(cols,rows),pSet,array(3,3))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">surface = array()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">Function</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Function</span> segments(arrInput,min,max,spacing)</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">segments = Null</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> i,j,k,r,s,cols,rows</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cols = <span style="color: #000080;">uBound</span>(arrInput)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">rows = <span style="color: #000080;">uBound</span>(arrInput(0))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> mvPlane, pSet(),band()</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> trFa(),arrTrFa()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> band(cols),trFa(rows),arrTrFa(cols)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> i = 0 <span style="color: #000080;">To</span> cols-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r=0</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> j = 0 <span style="color: #000080;">To</span> rows <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> arrInput(i)(j) &gt; min <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">trFa(j) = <span style="color: #000080;">True</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> pSet(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">pSet(r) = array(i*spacing,j*spacing,max*arrInput(i)(j))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r=r+1</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Else</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">trFa(j) = <span style="color: #000080;">False</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrTrFa(i) = trFa</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> ptGroup(),ptSet(),arrPts(),crvVal(),crvBln</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> arrPts(cols),crvVal(cols)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> i = 0 <span style="color: #000080;">To</span> cols-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r = 0</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">s = 0</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> arrTrFa(i)(0) = <span style="color: #000080;">True</span> <span style="color: #000080;">And</span> arrTrFa(i)(1) = <span style="color: #000080;">True</span> <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> <span style="color: #000080;">Preserve</span> ptGroup(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">ptGroup(r) = array(i*spacing,0*spacing,max*arrInput(i)(0))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r=r+1</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> j = 1 <span style="color: #000080;">To</span> rows-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> arrTrFa(i)(j) = <span style="color: #000080;">True</span> <span style="color: #000080;">And</span> arrTrFa(i)(j+1) = <span style="color: #000080;">True</span> <span style="color: #000080;">And</span> arrTrFa(i)(j-1) = <span style="color: #000080;">False</span> <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> <span style="color: #000080;">Preserve</span> ptGroup(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">ptGroup(r) = array(i*spacing,j*spacing,max*arrInput(i)(j))</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r=r+1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> arrTrFa(i)(j) = <span style="color: #000080;">True</span> <span style="color: #000080;">And</span> arrTrFa(i)(j-1) = <span style="color: #000080;">True</span> <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> <span style="color: #000080;">Preserve</span> ptGroup(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">ptGroup(r) = array(i*spacing,j*spacing,max*arrInput(i)(j))</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r = r+1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> arrTrFa(i)(j) = <span style="color: #000080;">True</span> <span style="color: #000080;">And</span> arrTrFa(i)(j+1) = <span style="color: #000080;">False</span> <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r = 0</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> <span style="color: #000080;">Preserve</span> ptSet(s)</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">ptSet(s) = ptGroup</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">s = s+1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> s = 0 <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">crvBln = <span style="color: #000080;">False</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Else</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">crvBln = <span style="color: #000080;">True</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrPts(i) = ptSet</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">crvVal(i) = crvBln</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> cntA,bandSet()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">s=0</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> i = 0 <span style="color: #000080;">To</span> cols-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r=0</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> crvVal(i) = <span style="color: #000080;">True</span> <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cntA = <span style="color: #000080;">uBound</span>(arrPts(i))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> j = 0 <span style="color: #000080;">To</span> cntA <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> band(r)</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">band(r) = Rhino.AddCurve(arrPts(i)(j))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r = r+1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> bandSet(s)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">bandSet(s) = band</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">s = s+1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">segments = bandSet</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">Function</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Function</span> uniformPannels(arrInput,min,max,spacing)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">uniformPannels = Null</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> i,j,k,r,s,cols,rows</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cols = <span style="color: #000080;">uBound</span>(arrInput)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">rows = <span style="color: #000080;">uBound</span>(arrInput(0))</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> pSet()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> trFa(),arrTrFa()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> band(cols),trFa(rows),arrTrFa(cols)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> i = 0 <span style="color: #000080;">To</span> cols-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r=0</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> j = 0 <span style="color: #000080;">To</span> rows <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> arrInput(i)(j) &gt; min <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">trFa(j) = <span style="color: #000080;">True</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> pSet(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">pSet(r) = array(i*spacing,j*spacing,max*arrInput(i)(j))</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r=r+1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Else</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">trFa(j) = <span style="color: #000080;">False</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrTrFa(i) = trFa</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> tempSrf,srfPlane()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">tempSrf = Rhino.AddSrfPt(array(array(-spacing*.5,-spacing*.5,0),array(-spacing*.5,spacing*.5,0),array(spacing*.5,spacing*.5,0),array(spacing*.5,-spacing*.5,0)))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r = 0</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> i = 1 <span style="color: #000080;">To</span> cols-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> j = 1 <span style="color: #000080;">To</span> rows-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> arrTrFa(i-1)(j) = <span style="color: #000080;">True</span> <span style="color: #000080;">And</span> arrTrFa(i)(j) = <span style="color: #000080;">True</span> <span style="color: #000080;">And</span> arrTrFa(i)(j-1) = <span style="color: #000080;">True</span> <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> <span style="color: #000080;">Preserve</span> srfPlane(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">srfPlane(r)= Rhino.OrientObject (tempSrf, array(array(0,0,0),array(1,0,0),array(0,1,0)), array(array(i*spacing,j*spacing,max*arrInput(i)(j)), array((i-1)*spacing,j*spacing,max*arrInput(i-1)(j)), array(i*spacing,(j-1)*spacing,max*arrInput(i)(j-1))), 1)</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r = r+1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Call</span> Rhino.DeleteObject(tempSrf)</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">uniformPannels = srfPlane</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">Function</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Function</span> loftPannels(arrInput,min,max,spacing)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">loftPannels = Null</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> i,j,k,r,s,cols,rows</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cols = <span style="color: #000080;">uBound</span>(arrInput)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">rows = <span style="color: #000080;">uBound</span>(arrInput(0))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> pSet()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> trFa(),arrTrFa()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> band(cols),trFa(rows),arrTrFa(cols)</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> i = 0 <span style="color: #000080;">To</span> cols-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r=0</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> j = 0 <span style="color: #000080;">To</span> rows <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> arrInput(i)(j) &gt; min <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">trFa(j) = <span style="color: #000080;">True</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> pSet(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">pSet(r) = array(i*spacing,j*spacing,max*arrInput(i)(j))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r=r+1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Else</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">trFa(j) = <span style="color: #000080;">False</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrTrFa(i) = trFa</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> srfOutput()</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r = 0</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> i = 1 <span style="color: #000080;">To</span> cols-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> j = 1 <span style="color: #000080;">To</span> rows-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> arrTrFa(i-1)(j) = <span style="color: #000080;">True</span> <span style="color: #000080;">And</span> arrTrFa(i-1)(j-1) = <span style="color: #000080;">True</span> <span style="color: #000080;">And</span> arrTrFa(i)(j) = <span style="color: #000080;">True</span> <span style="color: #000080;">And</span> arrTrFa(i)(j-1) = <span style="color: #000080;">True</span> <span style="color: #000080;">Then</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> <span style="color: #000080;">Preserve</span> srfOutput(r)</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">srfOutput(r) = Rhino.AddSrfPt(array(array((i-1)*spacing,j*spacing,max*arrInput(i-1)(j)),array((i-1)*spacing,(j-1)*spacing,max*arrInput(i-1)(j-1)),array(i*spacing,(j-1)*spacing,max*arrInput(i)(j-1)),array(i*spacing,j*spacing,max*arrInput(i)(j))))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r=r+1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">loftPannels = srfOutput</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">Function</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Function</span> cloud(arrInputX,arrInputY,arrInputZ,arrInputR,spacing,rad)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cloud = Null</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> i,j,r,cols,rows</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cols = <span style="color: #000080;">uBound</span>(arrInputX)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">rows = <span style="color: #000080;">uBound</span>(arrInputX(0))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Dim</span> mvPlane, arrbln, pSet()</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">arrbln = Rhino.GetBoolean(&quot;Type of Data Representation&quot;,array(&quot;Representation&quot;,&quot;points&quot;,&quot;spheres&quot;),array(<span style="color: #000080;">False</span>))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r = 0</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> i = 0 <span style="color: #000080;">To</span> cols-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">For</span> j = 0 <span style="color: #000080;">To</span> rows-1 <span style="color: #000080;">Step</span> 1</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">ReDim</span> <span style="color: #000080;">Preserve</span> pSet(r)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">pSet(r)    = array(arrInputX(i)(j)*spacing,arrInputY(i)(j)*spacing,arrInputZ(i)(j)*spacing)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">If</span> arrbln(0) = <span style="color: #000080;">True</span> <span style="color: #000080;">Then</span></div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Call</span> Rhino.addsphere(pSet(r),arrInputR(i)(j)*rad)</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Else</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Call</span> Rhino.AddPoint(pSet(r))</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">If</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">r =r+1</div></li><li style="font-weight: bold; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">Next</span></div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">cloud = pSet</div></li><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #000080;">End</span> <span style="color: #000080;">Function</span></div></li></ol></pre></div></div></p>
<p><a href="http://www.digitalfutures.info/wp-content/uploads/2009/09/Screen-shot-2009-09-09-at-8.42.13-PM.png"><img class="aligncenter size-full wp-image-194" title="Screen shot 2009-09-09 at 8.42.13 PM" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/Screen-shot-2009-09-09-at-8.42.13-PM.png" alt="Screen shot 2009-09-09 at 8.42.13 PM" /></a></p>
<p><a href="http://www.digitalfutures.info/wp-content/uploads/2009/09/Screen-shot-2009-09-09-at-8.13.43-PM.png"><img class="aligncenter size-full wp-image-189" title="Screen shot 2009-09-09 at 8.13.43 PM" src="http://www.digitalfutures.info/wp-content/uploads/2009/09/Screen-shot-2009-09-09-at-8.13.43-PM.png" alt="Screen shot 2009-09-09 at 8.13.43 PM" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.digitalfutures.info/1/rhino3d-image-reader-script /feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

