<?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>Eric Thivierge</title>
	<atom:link href="http://www.ethivierge.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ethivierge.com</link>
	<description>The technical side of animation.</description>
	<lastBuildDate>Sat, 06 Apr 2013 15:14:00 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>robotArm rig</title>
		<link>http://www.ethivierge.com/rigging/2013/04/05/robotarm-rig/</link>
		<comments>http://www.ethivierge.com/rigging/2013/04/05/robotarm-rig/#comments</comments>
		<pubDate>Sat, 06 Apr 2013 03:20:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Daily]]></category>
		<category><![CDATA[Rigging]]></category>

		<guid isPermaLink="false">http://www.ethivierge.com/?p=661</guid>
		<description><![CDATA[<style type="text/css">
#leftcontainerBox {
float:left;
position: fixed;
top: 60%;
left: 70px;
}

#leftcontainerBox .buttons {
float:left;
clear:both;
margin:4px 4px 4px 4px;

padding-bottom:2px;
}


#bottomcontainerBox {
height: 30px;
width:50%;
padding-top:1px;
}

#bottomcontainerBox .buttons {
float:left;
height: 30px;
margin:4px 4px 4px 4px;
}

</style>
Just rigged up a simple robot arm / claw to share with everyone. Haven't rigged anything in a few months so I did this little rig to keep my skills fresh. Rigged in Softimage 2012.5 and 2013 SP1 Download Here]]></description>
		<wfw:commentRss>http://www.ethivierge.com/rigging/2013/04/05/robotarm-rig/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>XML to Directory Structure</title>
		<link>http://www.ethivierge.com/scripting/2013/02/04/xml-to-directory-structure/</link>
		<comments>http://www.ethivierge.com/scripting/2013/02/04/xml-to-directory-structure/#comments</comments>
		<pubDate>Mon, 04 Feb 2013 20:25:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Daily]]></category>
		<category><![CDATA[Scripting]]></category>

		<guid isPermaLink="false">http://www.ethivierge.com/?p=622</guid>
		<description><![CDATA[<style type="text/css">
#leftcontainerBox {
float:left;
position: fixed;
top: 60%;
left: 70px;
}

#leftcontainerBox .buttons {
float:left;
clear:both;
margin:4px 4px 4px 4px;

padding-bottom:2px;
}


#bottomcontainerBox {
height: 30px;
width:50%;
padding-top:1px;
}

#bottomcontainerBox .buttons {
float:left;
height: 30px;
margin:4px 4px 4px 4px;
}

</style>
Here is a python snippet that creates a directory structure out of an XML file / data: &#160;]]></description>
		<wfw:commentRss>http://www.ethivierge.com/scripting/2013/02/04/xml-to-directory-structure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2012 Election</title>
		<link>http://www.ethivierge.com/daily/2012/11/05/2012-election/</link>
		<comments>http://www.ethivierge.com/daily/2012/11/05/2012-election/#comments</comments>
		<pubDate>Mon, 05 Nov 2012 08:25:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Daily]]></category>

		<guid isPermaLink="false">http://www.ethivierge.com/?p=612</guid>
		<description><![CDATA[<style type="text/css">
#leftcontainerBox {
float:left;
position: fixed;
top: 60%;
left: 70px;
}

#leftcontainerBox .buttons {
float:left;
clear:both;
margin:4px 4px 4px 4px;

padding-bottom:2px;
}


#bottomcontainerBox {
height: 30px;
width:50%;
padding-top:1px;
}

#bottomcontainerBox .buttons {
float:left;
height: 30px;
margin:4px 4px 4px 4px;
}

</style>
Firstly, take this post as you will if you don't agree great move on no need to try to persuade me otherwise. I'm posting to give some perspective to those who may be undecided. I'm so confused on why this presidential race is so close when the extreme measures Romney is going to go if [...]]]></description>
		<wfw:commentRss>http://www.ethivierge.com/daily/2012/11/05/2012-election/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Undo with statement</title>
		<link>http://www.ethivierge.com/scripting/2012/10/20/undo-with-statement/</link>
		<comments>http://www.ethivierge.com/scripting/2012/10/20/undo-with-statement/#comments</comments>
		<pubDate>Sun, 21 Oct 2012 02:56:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Scripting]]></category>

		<guid isPermaLink="false">http://www.ethivierge.com/?p=603</guid>
		<description><![CDATA[<style type="text/css">
#leftcontainerBox {
float:left;
position: fixed;
top: 60%;
left: 70px;
}

#leftcontainerBox .buttons {
float:left;
clear:both;
margin:4px 4px 4px 4px;

padding-bottom:2px;
}


#bottomcontainerBox {
height: 30px;
width:50%;
padding-top:1px;
}

#bottomcontainerBox .buttons {
float:left;
height: 30px;
margin:4px 4px 4px 4px;
}

</style>
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 from win32com.client import constants as c from win32com.client.dynamic import Dispatch as d &#160; xsi = Application log = xsi.LogMessage collSel = xsi.Selection &#160; &#160; class xsiUndo&#40;&#41;: def __enter__&#40;self&#41;: xsi.BeginUndo&#40;&#41; &#160; def __exit__&#40;self, type, [...]]]></description>
		<wfw:commentRss>http://www.ethivierge.com/scripting/2012/10/20/undo-with-statement/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Component selection via Object Model</title>
		<link>http://www.ethivierge.com/scripting/2012/09/18/component-selection-via-object-model/</link>
		<comments>http://www.ethivierge.com/scripting/2012/09/18/component-selection-via-object-model/#comments</comments>
		<pubDate>Tue, 18 Sep 2012 05:14:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Scripting]]></category>

		<guid isPermaLink="false">http://www.ethivierge.com/?p=594</guid>
		<description><![CDATA[<style type="text/css">
#leftcontainerBox {
float:left;
position: fixed;
top: 60%;
left: 70px;
}

#leftcontainerBox .buttons {
float:left;
clear:both;
margin:4px 4px 4px 4px;

padding-bottom:2px;
}


#bottomcontainerBox {
height: 30px;
width:50%;
padding-top:1px;
}

#bottomcontainerBox .buttons {
float:left;
height: 30px;
margin:4px 4px 4px 4px;
}

</style>
from AL.xsi import xsi, log, c, utils &#160; lSubCompSel = &#91;&#93; for eachObj in xsi.Selection: &#160; oGeo = eachObj.ActivePrimitive.Geometry oSubComp = oGeo.CreateSubcomponent&#40;c.siPolygonCluster, range&#40;4&#41;&#41; lSubCompSel.append&#40;oSubComp&#41; &#160; log&#40;&#34;,&#34;.join&#40;&#91;str&#40;x&#41; for x in lSubCompSel&#93;&#41;&#41; xsi.Selection.SetAsText&#40;&#34;,&#34;.join&#40;&#91;str&#40;x&#41; for x in lSubCompSel&#93;&#41;&#41;]]></description>
		<wfw:commentRss>http://www.ethivierge.com/scripting/2012/09/18/component-selection-via-object-model/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Some thoughts on tool dev</title>
		<link>http://www.ethivierge.com/scripting/2012/07/18/some-thoughts-on-tool-dev/</link>
		<comments>http://www.ethivierge.com/scripting/2012/07/18/some-thoughts-on-tool-dev/#comments</comments>
		<pubDate>Wed, 18 Jul 2012 10:12:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Daily]]></category>
		<category><![CDATA[Scripting]]></category>

		<guid isPermaLink="false">http://www.ethivierge.com/?p=591</guid>
		<description><![CDATA[<style type="text/css">
#leftcontainerBox {
float:left;
position: fixed;
top: 60%;
left: 70px;
}

#leftcontainerBox .buttons {
float:left;
clear:both;
margin:4px 4px 4px 4px;

padding-bottom:2px;
}


#bottomcontainerBox {
height: 30px;
width:50%;
padding-top:1px;
}

#bottomcontainerBox .buttons {
float:left;
height: 30px;
margin:4px 4px 4px 4px;
}

</style>
Some recent issues I've run into lately have sparked some thoughts on tool dev: Firstly, when you're developing tools for many people on different teams you need to get input from all the teams and individuals. Some tool concepts and functionality may work for a larger group, but may cripple the smaller group's workflow. For [...]]]></description>
		<wfw:commentRss>http://www.ethivierge.com/scripting/2012/07/18/some-thoughts-on-tool-dev/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ET_NormalCurves</title>
		<link>http://www.ethivierge.com/daily/2012/06/03/et_normalcurves/</link>
		<comments>http://www.ethivierge.com/daily/2012/06/03/et_normalcurves/#comments</comments>
		<pubDate>Sun, 03 Jun 2012 05:32:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Daily]]></category>

		<guid isPermaLink="false">http://www.ethivierge.com/?p=584</guid>
		<description><![CDATA[<style type="text/css">
#leftcontainerBox {
float:left;
position: fixed;
top: 60%;
left: 70px;
}

#leftcontainerBox .buttons {
float:left;
clear:both;
margin:4px 4px 4px 4px;

padding-bottom:2px;
}


#bottomcontainerBox {
height: 30px;
width:50%;
padding-top:1px;
}

#bottomcontainerBox .buttons {
float:left;
height: 30px;
margin:4px 4px 4px 4px;
}

</style>
Here is a script that will add a curve to each point or polygon aligned to its normal. Change the arguments according to what you need. # Python from win32com.client import constants as c from win32com.client import Dispatch as d &#160; xsi = Application log = xsi.LogMessage collSel = xsi.Selection &#160; def axesFromNormal&#40;vecNormal, vecUpV&#41;: &#34;&#34;&#34;Creates [...]]]></description>
		<wfw:commentRss>http://www.ethivierge.com/daily/2012/06/03/et_normalcurves/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Create Curves on Normals</title>
		<link>http://www.ethivierge.com/scripting/2012/05/25/create-curves-on-normals/</link>
		<comments>http://www.ethivierge.com/scripting/2012/05/25/create-curves-on-normals/#comments</comments>
		<pubDate>Fri, 25 May 2012 11:05:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Daily]]></category>
		<category><![CDATA[Scripting]]></category>

		<guid isPermaLink="false">http://www.ethivierge.com/?p=579</guid>
		<description><![CDATA[<style type="text/css">
#leftcontainerBox {
float:left;
position: fixed;
top: 60%;
left: 70px;
}

#leftcontainerBox .buttons {
float:left;
clear:both;
margin:4px 4px 4px 4px;

padding-bottom:2px;
}


#bottomcontainerBox {
height: 30px;
width:50%;
padding-top:1px;
}

#bottomcontainerBox .buttons {
float:left;
height: 30px;
margin:4px 4px 4px 4px;
}

</style>
from win32com.client import constants as c from win32com.client import Dispatch as d &#160; xsi = Application log = xsi.LogMessage collSel = xsi.Selection &#160; def xformFromDirection&#40;vecBase, vecTgt, vecUpV&#41;: &#34;&#34;&#34;Creates a transform for base object pointing to target with an upvector upV.&#34;&#34;&#34; &#160; vecX = XSIMath.CreateVector3&#40;&#41; vecY = XSIMath.CreateVector3&#40;&#41; vecZ = XSIMath.CreateVector3&#40;&#41; vecToTgt = XSIMath.CreateVector3&#40;&#41; vecBaseToUpV = [...]]]></description>
		<wfw:commentRss>http://www.ethivierge.com/scripting/2012/05/25/create-curves-on-normals/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Toggle Softimage Script Editor</title>
		<link>http://www.ethivierge.com/scripting/2012/04/13/toggle-softimage-script-editor/</link>
		<comments>http://www.ethivierge.com/scripting/2012/04/13/toggle-softimage-script-editor/#comments</comments>
		<pubDate>Fri, 13 Apr 2012 12:41:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Scripting]]></category>

		<guid isPermaLink="false">http://www.ethivierge.com/?p=571</guid>
		<description><![CDATA[<style type="text/css">
#leftcontainerBox {
float:left;
position: fixed;
top: 60%;
left: 70px;
}

#leftcontainerBox .buttons {
float:left;
clear:both;
margin:4px 4px 4px 4px;

padding-bottom:2px;
}


#bottomcontainerBox {
height: 30px;
width:50%;
padding-top:1px;
}

#bottomcontainerBox .buttons {
float:left;
height: 30px;
margin:4px 4px 4px 4px;
}

</style>
This code toggles the Softimage script editor on and off. Useful to embed in a custom layout. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 from win32com.client import constants as c from win32com.client import Dispatch as d&#60;/code&#62; &#160; [...]]]></description>
		<wfw:commentRss>http://www.ethivierge.com/scripting/2012/04/13/toggle-softimage-script-editor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Extract deformer to weight map</title>
		<link>http://www.ethivierge.com/scripting/2012/02/15/extract-deformer-to-weight-map/</link>
		<comments>http://www.ethivierge.com/scripting/2012/02/15/extract-deformer-to-weight-map/#comments</comments>
		<pubDate>Wed, 15 Feb 2012 22:29:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Daily]]></category>
		<category><![CDATA[Scripting]]></category>

		<guid isPermaLink="false">http://www.ethivierge.com/?p=526</guid>
		<description><![CDATA[<style type="text/css">
#leftcontainerBox {
float:left;
position: fixed;
top: 60%;
left: 70px;
}

#leftcontainerBox .buttons {
float:left;
clear:both;
margin:4px 4px 4px 4px;

padding-bottom:2px;
}


#bottomcontainerBox {
height: 30px;
width:50%;
padding-top:1px;
}

#bottomcontainerBox .buttons {
float:left;
height: 30px;
margin:4px 4px 4px 4px;
}

</style>
This is a code snippet that you can use to extract the envelope weights of a deformer to a weight map. xsi = Application oWeightMap = xsi.Selection&#40;0&#41; oObj = oWeightMap.Parent3DObject oEnv = oObj.Envelopes&#40;0&#41; defOneArray = oEnv.GetWeights2&#40;&#41;.Array&#91;1&#93; # Change Array index to get a different deformer oWeightMap.Elements.Array = &#91;x / 100 for x in defOneArray&#93;]]></description>
		<wfw:commentRss>http://www.ethivierge.com/scripting/2012/02/15/extract-deformer-to-weight-map/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
