<?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>Yuri Telles</title>
	<atom:link href="http://yuritelles.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://yuritelles.com</link>
	<description></description>
	<lastBuildDate>Wed, 19 Oct 2011 17:11:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Braço com 2 revolute joints</title>
		<link>http://yuritelles.com/2011/10/18/algoritmo-braco-2-revolute-joints/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=algoritmo-braco-2-revolute-joints</link>
		<comments>http://yuritelles.com/2011/10/18/algoritmo-braco-2-revolute-joints/#comments</comments>
		<pubDate>Tue, 18 Oct 2011 21:42:49 +0000</pubDate>
		<dc:creator>yuritelles</dc:creator>
				<category><![CDATA[Robótica]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[ik]]></category>
		<category><![CDATA[inverse kinematics]]></category>
		<category><![CDATA[revolute joint]]></category>

		<guid isPermaLink="false">http://yuritelles.com/?p=26</guid>
		<description><![CDATA[Algoritmo de Inverse Kinematics para um braço robótico com 2 revolute joints $s1 = this.arm.seg01; $s2 = this.arm.seg01.seg02; pit = function($x,$y) { h = Math.pow($x,2) + Math.pow($y,2); h = Math.pow(h,0.5); return h } $m=150 $n=150 onMouseMove = function() { $e &#8230; <a href="http://yuritelles.com/2011/10/18/algoritmo-braco-2-revolute-joints/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Algoritmo de Inverse Kinematics para um braço robótico com 2 revolute joints</p>

    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="swfobj_0" width="584" height="584">
      <param name="movie" value="http://yuritelles.com/wp-content/uploads/2011/10/arm_2rev_model.swf" />
      <!--[if !IE]>-->
      <object type="application/x-shockwave-flash" data="http://yuritelles.com/wp-content/uploads/2011/10/arm_2rev_model.swf" width="584" height="584">
      <!--<![endif]-->
        
      <!--[if !IE]>-->
      </object>
      <!--<![endif]-->
    </object>

<pre>$s1 = this.arm.seg01;
$s2 = this.arm.seg01.seg02;

pit = function($x,$y) {
	h = Math.pow($x,2) + Math.pow($y,2);
	h = Math.pow(h,0.5);
	return h
}

$m=150
$n=150

onMouseMove = function() {
	$e = arm._xmouse<0;
	$f = 1-2*$e;
	$g = $e*Math.PI;
	$h = pit(arm._xmouse,arm._ymouse);

	$x = arm._xmouse*Math.min($m+$n,$h)/$h;
	$y = arm._ymouse*Math.min($m+$n,$h)/$h;

	$a = $y/$x;
	$b = ($x*$x+$y*$y)/(2*$m*$n)-($m/$n+$n/$m)/2;
	$c = $n*Math.sin(Math.acos($b))/($m+$n*$b);

	$r2 = Math.acos($b);
	$r1 = -Math.atan($c)+Math.atan($a)-$g;

	$s1._rotation = $r1/Math.PI*180;
	$s2._rotation = $r2/Math.PI*180;

	trace([$s1._rotation,$s2._rotation]);
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://yuritelles.com/2011/10/18/algoritmo-braco-2-revolute-joints/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>#RIPSteveJobs</title>
		<link>http://yuritelles.com/2011/10/05/ripstevejobs/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ripstevejobs</link>
		<comments>http://yuritelles.com/2011/10/05/ripstevejobs/#comments</comments>
		<pubDate>Thu, 06 Oct 2011 01:52:21 +0000</pubDate>
		<dc:creator>yuritelles</dc:creator>
				<category><![CDATA[Sem categoria]]></category>

		<guid isPermaLink="false">http://yuritelles.com/?p=24</guid>
		<description><![CDATA[The world rarely sees someone who has had the profound impact Steve has had, the effects of which will be felt for many generations to come.]]></description>
			<content:encoded><![CDATA[<p>The world rarely sees someone who has had the profound impact Steve has had, the effects of which will be felt for many generations to come.</p>
]]></content:encoded>
			<wfw:commentRss>http://yuritelles.com/2011/10/05/ripstevejobs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>gramUpper</title>
		<link>http://yuritelles.com/2011/10/04/gramupper/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=gramupper</link>
		<comments>http://yuritelles.com/2011/10/04/gramupper/#comments</comments>
		<pubDate>Tue, 04 Oct 2011 16:23:15 +0000</pubDate>
		<dc:creator>yuritelles</dc:creator>
				<category><![CDATA[Programação]]></category>
		<category><![CDATA[Visual Basic]]></category>
		<category><![CDATA[excel]]></category>
		<category><![CDATA[função]]></category>
		<category><![CDATA[programação]]></category>
		<category><![CDATA[vba]]></category>
		<category><![CDATA[visual basic for applications]]></category>

		<guid isPermaLink="false">http://yuritelles.com/?p=10</guid>
		<description><![CDATA[Função em VBA para substituir PRI.MAIÚSCULA do Excel, incluindo Lowercase em pronomes e Uppercase em palavras que contenham apenas consoantes e siglas conhecidas. Function inArray(x, a) As Long inArray = False For Each i In a If UCase(x) = UCase(i) &#8230; <a href="http://yuritelles.com/2011/10/04/gramupper/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Função em VBA para substituir PRI.MAIÚSCULA do Excel, incluindo Lowercase em pronomes e Uppercase em palavras que contenham apenas consoantes e siglas conhecidas.</p>
<pre>Function inArray(x, a) As Long
    inArray = False
    For Each i In a
        If UCase(x) = UCase(i) Then inArray = True
    Next i
End Function

Function isPronoun(word)
    pronouns = Array("E", "Da", "Do", "Das", "Dos", "De", "Em", "Para", "Com", "Sobre", "A", "O", "As", "Os", "Na", "No", "Nas", "Nos", "Desde", "Sem")
    isPronoun = inArray(word, pronouns)
End Function

Function isAcronym(word)
    vowels = Array("a", "e", "i", "o", "u")
    acronyms = Array("E&#038;P", "CO2", "PRAVAP")
    isAcronym = True
    If inArray(word, acronyms) = False Then
        For i = 1 To Len(word)
            x = Mid(word, i, 1)
            If inArray(x, vowels) Then isAcronym = False
        Next i
    End If
End Function

Function gramUpper(txt As String) As String

For i = 0 To UBound(Split(txt, " "))
    word = Split(txt, " ")(i)
    word = UCase(Left(word, 1)) &#038; LCase(Mid(word, 2))
    If isAcronym(word) Then word = UCase(word)
    If i > 0 Then
        If isPronoun(word) Then word = LCase(word)
    End If
    result = result &#038; " " &#038; word
Next i

gramUpper = Mid(result, 2)

End Function</pre>
]]></content:encoded>
			<wfw:commentRss>http://yuritelles.com/2011/10/04/gramupper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

