Mailing List
Home
Forum Home
Softimage
Carrara
trueSpace
Dir3d-l
Maya - a powerful 3D animation and visual effects software
Macromedia Flash Development
Subjects
Cameras
scaleDown command
black out solved
Aircraft Tutorial
Mathematical XYZ ?
Its done This vs That
Its done first week
recommendations for screen video captures?
3DExplorer "Oddity "
New Director
ProTeam renewals
Fuel 's new websites (X post)
Blue peter create a make toy
targeting groups question
XPost: Shockwave 3D game ( sort of )
RES: RES: RES: Fish Modeling
Emitting particles from object intersection
Fuel 's new websites (X post)
Texturing
Big Break Contest Videos
New Plugins
Models and Texture on my updated site
Error Installing Patch tS6 6
Plasma?
Looking for Inspiration
Weird EMail Q
It 's done first week ?
Cherry not cranberry
New game
Camera Animation Problem
Particle plugins?
 
How do I get the curveeditorcontrol 's fcurve object

How do I get the curveeditorcontrol 's fcurve object

2005-04-30       - By Reinhard Claus

 Back
Reply:     1     2     3     4  

Hm I had a problem a while ago that might be related to this. I had to deal
with point subcomponent selections using the c++ api and had similar
problems as you're reporting.
It turned out that the SubComponent object isn't yet fully supported by the
cppapi, and I had to use the CComApi... wrappers all the way through.
Using the Invoke method etc. etc... Bad times.

http://www.softimage.com/Community/Xsi/Discuss/Archives/xsi.archive.0409
/msg01636.htm

Reinhard

2005/4/30, Felix Gebhardt <gebhardt@(protected)>:
>
> Hi,
>
> I'm trying to equip a C++ operator with a fcurve editor (a profile curve
> like the Bulge op). If put a DSFCurveEditorCtrl in the operator's
> property set the editing framework appears but no default curve is
> shown. Any way at the moment to get this going?
>
> As a workaround I hook up an external custom property to a dedicated
> port group. Question is: How do I get to it's fcurve object from the C++
> API? Is there any information how to convert the COM pointer to a CRef?
>
> That's what I got so far:
>
> InputPort inPort( op.GetPort(L"I_Control",L"Group_1",0) );
> if(inPort.IsConnected())
> {
> Property ctrl(inPort.GetValue());
> Parameter para(ctrl.GetParameter(L"Profile"));
> CComAPIHandler comPara(para.GetRef());
> CValue val = comPara.GetProperty( L"Value" );
> app.LogMessage(CValue(val.m_t==CValue::siIDispatch).GetAsText());
> // INFO : siIDispatch thingy? true
> app.LogMessage(val.GetAsText());
> // INFO : some address like 0D8F89B0
> app.LogMessage(val);
> // INFO : FCurve
> }
>
> I tried a lot of conversion gymnastic here but nothing seems to work.
> Any COM folks around?
>
> Thanks in advance,
> Felix
> ---
> Unsubscribe? Mail Majordomo@(protected) with the following text in body:
> unsubscribe xsi
>

Hm I had a problem a while ago that might be related to this. I had to
deal with point subcomponent selections using the c++ api and had
similar problems as you're reporting. <br>
It turned out that the SubComponent object isn't yet fully supported by
the cppapi, and I had to use the CComApi... wrappers all the way
through.<br>
Using the Invoke method etc. etc... Bad times.<br><br>
<a href="http://www.softimage.com/Community/Xsi/Discuss/Archives/xsi.archive
.0409/msg01636.htm">http://www.softimage.com/Community/Xsi/Discuss/Archives/xsi
.archive.0409/msg01636.htm</a><br>
<br>
Reinhard<br>
<br><div><span class="gmail_quote">2005/4/30, Felix Gebhardt &lt;<a href=
"mailto:gebhardt@(protected)">gebhardt@(protected)</a>&gt;:</span>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204)
; margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi,<br><br>I'm trying to equip a C++ operator with a fcurve editor (a profile
curve<br>like the Bulge op). If put a DSFCurveEditorCtrl in the operator's<br
>property set the editing framework appears but no default curve is
<br>shown. Any way at the moment to get this going?<br><br>As a workaround I
hook up an external custom property to a dedicated<br>port group. Question is:
How do I get to it's fcurve object from the C++<br>API? Is there any
information how to convert the COM pointer to a CRef?
<br><br>That's what I got so far:<br><br>InputPort inPort( op.GetPort(L&quot;I
_Control&quot;,L&quot;Group_1&quot;,0) );<br>if(inPort.IsConnected())<br>{<br>
&nbsp;&nbsp; Property ctrl(inPort.GetValue());<br>&nbsp;&nbsp; Parameter para
(ctrl.GetParameter
(L&quot;Profile&quot;));<br>&nbsp;&nbsp; CComAPIHandler comPara(para.GetRef());
<br>&nbsp;&nbsp; CValue val = comPara.GetProperty( L&quot;Value&quot; );<br>
&nbsp;&nbsp; app.LogMessage(CValue(val.m_t==CValue::siIDispatch).GetAsText());
<br>&nbsp;&nbsp; // INFO : siIDispatch thingy? true
<br>&nbsp;&nbsp; app.LogMessage(val.GetAsText());<br>&nbsp;&nbsp; // INFO :
some address like 0D8F89B0<br>&nbsp;&nbsp; app.LogMessage(val);<br>&nbsp;&nbsp;
// INFO : FCurve<br>}<br><br>I tried a lot of conversion gymnastic here but
nothing seems to work.<br>Any COM folks around?
<br><br>Thanks in advance,<br>Felix<br>---<br>Unsubscribe? Mail <a href="mailto
:Majordomo@(protected)">Majordomo@(protected)</a> with the following text in
body:<br>unsubscribe xsi<br></blockquote></div><br>