<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:st1="urn:schemas-microsoft-com:office:smarttags" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="cid:filelist.xml@01C64C09.FDB82C00">
<link rel=Edit-Time-Data href="cid:editdata.mso@01C64C09.FDB82C00">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]--><!--[if gte mso 9]><xml>
<o:OfficeDocumentSettings>
<o:DoNotRelyOnCSS/>
</o:OfficeDocumentSettings>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
<w:Zoom>0</w:Zoom>
<w:DocumentKind>DocumentEmail</w:DocumentKind>
<w:EnvelopeVis/>
</w:WordDocument>
</xml><![endif]-->
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;
        mso-font-charset:0;
        mso-generic-font-family:swiss;
        mso-font-pitch:variable;
        mso-font-signature:1627421319 -2147483648 8 0 66047 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {mso-style-parent:"";
        margin:0in;
        margin-bottom:.0001pt;
        mso-pagination:widow-orphan;
        font-size:12.0pt;
        font-family:"Times New Roman";
        mso-fareast-font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;
        text-underline:single;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;
        text-underline:single;}
p.MsoAutoSig, li.MsoAutoSig, div.MsoAutoSig
        {margin:0in;
        margin-bottom:.0001pt;
        mso-pagination:widow-orphan;
        font-size:12.0pt;
        font-family:"Times New Roman";
        mso-fareast-font-family:"Times New Roman";}
span.EmailStyle18
        {mso-style-type:personal;
        mso-ascii-font-family:Arial;
        mso-hansi-font-family:Arial;
        mso-bidi-font-family:Arial;
        color:black;}
span.EmailStyle19
        {mso-style-type:personal;
        mso-ascii-font-family:Arial;
        mso-hansi-font-family:Arial;
        mso-bidi-font-family:Arial;
        color:black;}
span.EmailStyle20
        {mso-style-type:personal;
        mso-ascii-font-family:Arial;
        mso-hansi-font-family:Arial;
        mso-bidi-font-family:Arial;
        color:navy;}
span.EmailStyle21
        {mso-style-type:personal;
        mso-ascii-font-family:Arial;
        mso-hansi-font-family:Arial;
        mso-bidi-font-family:Arial;
        color:#993366;}
span.EmailStyle22
        {mso-style-type:personal;
        mso-ascii-font-family:Arial;
        mso-hansi-font-family:Arial;
        mso-bidi-font-family:Arial;
        color:navy;}
span.EmailStyle23
        {mso-style-type:personal-reply;
        mso-ansi-font-size:10.0pt;
        mso-ascii-font-family:Arial;
        mso-hansi-font-family:Arial;
        mso-bidi-font-family:Arial;
        color:#003300;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.25in 1.0in 1.25in;
        mso-header-margin:.5in;
        mso-footer-margin:.5in;
        mso-paper-source:0;}
div.Section1
        {page:Section1;}
-->
</style>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="City"/><o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags" name="place"/>
</head>
<body lang=EN-US link=blue vlink=purple style='tab-interval:.5in'>
<div class=Section1>
<p class=MsoNormal><span class=EmailStyle23><font size=2 color="#003300"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>Hi Drew,<o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle23><font size=2 color="#003300"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle23><font size=2 color="#003300"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>Thank you so much for the help. I will try more. It is great to know
that I am not alone!<o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle23><font size=2 color="#003300"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle23><font size=2 color="#003300"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>Frank<o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle23><font size=2 color="#003300"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></font></span></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'>-----Original Message-----<br>
<b><span style='font-weight:bold'>From:</span></b> Andrew J. Dolgert
[mailto:ajd27@cornell.edu]<br>
<b><span style='font-weight:bold'>Sent:</span></b> Monday, March 20, 2006 10:07
AM<br>
<b><span style='font-weight:bold'>To:</span></b> gao@mdimaging.com;
Vtkusers@Vtk.Org; Thomas Lambertz; Xiaofeng Zhao<br>
<b><span style='font-weight:bold'>Subject:</span></b> RE: [vtkusers] VTK and
GUI - vtkRenderWindow - Virtual or Physical?</span></font></p>
<p class=MsoNormal><font size=3 face="Times New Roman"><span style='font-size:
12.0pt'><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Hi Frank,<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>I was just working on this. You have to
set both the parent ID and the window ID, as shown in the example in
VTK/GUISupport/MFC directory. That code shows all of the steps you have to do.
I shouldn’t really send files on the mailing list, so I’ll send them to you
separately.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Drew<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'> <o:p></o:p></span></font></p>
<div class=MsoNormal align=center style='text-align:center'><font size=3
color=black face="Times New Roman"><span style='font-size:12.0pt;color:black'>
<hr size=2 width="100%" align=center>
</span></font></div>
<p class=MsoNormal><b><font size=2 color=black face=Tahoma><span
style='font-size:10.0pt;font-family:Tahoma;color:black;font-weight:bold'>From:</span></font></b><font
size=2 color=black face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma;
color:black'> Frank Gao [mailto:gao@mdimaging.com] <br>
<b><span style='font-weight:bold'>Sent:</span></b> Monday, March 20, 2006 12:41
PM<br>
<b><span style='font-weight:bold'>To:</span></b> Andrew J. Dolgert;
Vtkusers@Vtk.Org; Thomas Lambertz; Xiaofeng Zhao<br>
<b><span style='font-weight:bold'>Subject:</span></b> RE: [vtkusers] VTK and GUI
- vtkRenderWindow - Virtual or Physical?</span></font><font color=black><span
style='color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 color=black face="Times New Roman"><span
style='font-size:12.0pt;color:black'> </span></font><font color=black><span
style='color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'>Hi All,<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'>Thanks for the replies.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'>Both Drew and Tom said were what I was
trying to do. Separating UI and internal code is my basic intent, and also I am
not trying to use the .Net wrapper for the whole VTK. However, I am still
struggling to get it work. The error I received is that some object is busy,
which made me think that there are conflicts somewhere.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'>To prove the concept, I am trying to
have a C# application to view a single DICOM file. The code has three layers:
C# code for UI, C++ wrapper to a C++ class, and then the C++ class making VTK
calls. Please see the code below. <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'>I would very much appreciate if you
would like to help correct the approach or provide some sample code.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'>Thanks,<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'>Frank<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'>C# UI layer<o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color=blue
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'>private</span></font><font size=2 color="#993366" face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:#993366'> </span></font><font
size=2 color=blue face="Courier New"><span style='font-size:10.0pt;font-family:
"Courier New";color:blue'>void</span></font><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'> openFileDialog1_FileOk(</span></font><font size=2 color=blue
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'>object</span></font><font size=2 color="#993366" face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:#993366'> sender,
System.ComponentModel.CancelEventArgs e)</span></font><font size=2 color=black
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>{</span></font><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:black;mso-color-alt:
windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'> wrapper.Open (</span></font><font
size=2 color=blue face="Courier New"><span style='font-size:10.0pt;font-family:
"Courier New";color:blue'>this</span></font><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>.openFileDialog1.FileName, </span></font><font size=2
color=blue face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'>this</span></font><font size=2 color="#993366" face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:#993366'>.Handle);</span></font><font
size=2 color=black face="Courier New"><span style='font-size:10.0pt;font-family:
"Courier New";color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>
</span></font><font size=2 color=green face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:green'><o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color="#993366" face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:#993366'>}</span></font><font
size=2 color=black face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma;
color:black'><o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'>Then my C++ wrapper to VTK code<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'> <o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color=blue
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'>void</span></font><font size=2 color="#993366" face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:#993366'> Wrapper::Open
(String *filename, IntPtr wnd)</span></font><font size=2 color=black
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>{</span></font><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:black;mso-color-alt:
windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'> </span></font><font size=2
color=blue face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'>char</span></font><font size=2 color="#993366" face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:#993366'> </span></font><font
size=2 color=blue face="Courier New"><span style='font-size:10.0pt;font-family:
"Courier New";color:blue'>__nogc</span></font><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>* pStr = </span></font><font size=2 color=blue face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:blue'>static_cast</span></font><font
size=2 color="#993366" face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New";color:#993366'><</span></font><font size=2
color=blue face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'>char</span></font><font size=2 color="#993366" face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:#993366'>*>(Marshal::StringToHGlobalAnsi(filename).ToPointer());</span></font><font
size=2 color=black face="Courier New"><span style='font-size:10.0pt;font-family:
"Courier New";color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'> m->Open (pStr,
(HWND)wnd.ToPointer());</span></font><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:black;mso-color-alt:
windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>}</span></font><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:black;mso-color-alt:
windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'>The last one is my C++ code:<o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'> </span></font><font size=2
color=blue face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:blue'>void</span></font><font size=2 color="#993366" face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:#993366'> Dicomer::Open
(</span></font><font size=2 color=blue face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:blue'>char</span></font><font
size=2 color="#993366" face="Courier New"><span style='font-size:10.0pt;
font-family:"Courier New";color:#993366'> *filename, HWND whnd)</span></font><font
size=2 color=black face="Courier New"><span style='font-size:10.0pt;font-family:
"Courier New";color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'> {</span></font><font size=2
color=black face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>
pvtkDataSetReader->SetFileName(filename);</span></font><font size=2
color=black face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>
pvtkDataSetMapper->SetInput(pvtkDataSetReader->GetOutput());</span></font><font
size=2 color=black face="Courier New"><span style='font-size:10.0pt;font-family:
"Courier New";color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>
pvtkActor->SetMapper(pvtkDataSetMapper);</span></font><font size=2
color=black face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'> </span></font><font size=2
color=black face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>
pvtkRenderer = vtkRenderer::New();</span></font><font size=2
color=black face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>
pvtkOGLWindow = vtkWin32OpenGLRenderWindow::New();</span></font><font size=2
color=black face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color=black
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black'> </span></font><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:black;mso-color-alt:
windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>
pvtkOGLWindow->SetParentId((HWND)whnd);</span></font><font size=2
color=black face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color=black
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black'> </span></font><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:black;mso-color-alt:
windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>
pvtkRenderer ->SetRenderWindow (pvtkOGLWindow);</span></font><font size=2
color=black face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>
pvtkRenderer->SetBackground(0.0,0.0,0.4);</span></font><font size=2
color=black face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>
pvtkRenderer->AddActor((pvtkActor));</span></font><font size=2 color=black
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>
pvtkRenderer->ResetCamera();</span></font><font size=2 color=black
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color="#993366"
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:#993366'>
pvtkOGLWindow->Render();</span></font><font size=2 color=black
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color="#993366" face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:#993366'>
}</span></font><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'><o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'>-----Original Message-----<br>
<b><span style='font-weight:bold'>From:</span></b> Thomas Lambertz
[mailto:thomas@hexerei-software.de]<br>
<b><span style='font-weight:bold'>Sent:</span></b> Saturday, March 18, 2006
10:51 AM<br>
<b><span style='font-weight:bold'>To:</span></b> vtkusers@vtk.org<br>
<b><span style='font-weight:bold'>Subject:</span></b> Re: [vtkusers] VTK and
GUI - vtkRenderWindow - Virtual or Physical?</span></font><font color=black><span
style='color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 color=black face="Times New Roman"><span
style='font-size:12.0pt;color:black'> </span></font><font color=black><span
style='color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='text-autospace:none'><font size=2 color=black
face="Courier New"><span style='font-size:10.0pt;font-family:"Courier New";
color:black'> </span></font><font size=2 color=black face="Courier New"><span
style='font-size:10.0pt;font-family:"Courier New";color:black;mso-color-alt:
windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal style='margin-bottom:12.0pt;text-autospace:none'><font
size=2 color="#993366" face="Times New Roman"><span style='font-size:10.0pt;
color:#993366'><br>
Hello Frank,<br>
<br>
i am far away from being such an expert - but - maybe me tries are<br>
helpful for you.<br>
<br>
I splittet my application into two parts. GUI runs as a managed Win Form<br>
and the numerical parts are done in a separate DLL which is native-x86.<br>
And - to come closer to your question - yes - i have not found problems<br>
at this time by letting VTK render into a Forms-Picturebox.<br>
<br>
I know that VS 2003/2005 can handle managed / unmanaged Code in the same<br>
executable but i didnt tried this way ( splitting has some advantages<br>
for me ).<br>
<br>
Hope this helps,<br>
Tom<br style='mso-special-character:line-break'>
<![if !supportLineBreakNewLine]><br style='mso-special-character:line-break'>
<![endif]></span></font><span class=EmailStyle21><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;font-family:Arial'><o:p></o:p></span></font></span></p>
<p class=MsoNormal><font size=2 color=black face=Tahoma><span style='font-size:
10.0pt;font-family:Tahoma;color:black'>-----Original Message-----<br>
<b><span style='font-weight:bold'>From:</span></b> Andrew J. Dolgert
[mailto:ajd27@cornell.edu]<br>
<b><span style='font-weight:bold'>Sent:</span></b> Saturday, March 18, 2006
7:10 AM<br>
<b><span style='font-weight:bold'>To:</span></b> gao@mdimaging.com;
Vtkusers@Vtk.Org<br>
<b><span style='font-weight:bold'>Subject:</span></b> RE: [vtkusers] VTK and
GUI - vtkRenderWindow - Virtual or Physical?</span></font><font color=black><span
style='color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 color=black face="Times New Roman"><span
style='font-size:12.0pt;color:black'> </span></font><font color=black><span
style='color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Your idea is interesting. It might apply
to attempts to use VTK as a server for <st1:place w:st="on"><st1:City w:st="on">AJAX</st1:City></st1:place>.
For Windows Forms, however, the current setup works fine because the
vtkWin32OpenGLRenderWindow will happily receive events from and draw into the
Frame of a Windows Form because Windows Forms expose their HWND handle.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'> <o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'>Drew Dolgert<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=2 color=navy face=Arial><span style='font-size:
10.0pt;font-family:Arial;color:navy'> <o:p></o:p></span></font></p>
<div class=MsoNormal align=center style='text-align:center'><font size=3
color=black face="Times New Roman"><span style='font-size:12.0pt;color:black'>
<hr size=2 width="100%" align=center>
</span></font></div>
<p class=MsoNormal><b><font size=2 color=black face=Tahoma><span
style='font-size:10.0pt;font-family:Tahoma;color:black;font-weight:bold'>From:</span></font></b><font
size=2 color=black face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma;
color:black'> vtkusers-bounces+ajd27=cornell.edu@vtk.org
[mailto:vtkusers-bounces+ajd27=cornell.edu@vtk.org] <b><span style='font-weight:
bold'>On Behalf Of </span></b>Frank Gao<br>
<b><span style='font-weight:bold'>Sent:</span></b> Friday, March 17, 2006 5:24
PM<br>
<b><span style='font-weight:bold'>To:</span></b> Vtkusers@Vtk.Org<br>
<b><span style='font-weight:bold'>Subject:</span></b> [vtkusers] VTK and GUI -
vtkRenderWindow - Virtual or Physical?</span></font><font color=black><span
style='color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 color=black face="Times New Roman"><span
style='font-size:12.0pt;color:black'> </span></font><font color=black><span
style='color:black;mso-color-alt:windowtext'><o:p></o:p></span></font></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'>Hi Experts,<o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'> <o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'>I have a question
about vtkRenderWindow, and vtkOpenGLRenderWindow. Are such objects virtual, or
have to be physical by setting the parent window ID? <o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'> <o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'>The requirement
behind this question is here. Suppose an application must separate its window
display and interaction from its internal code. The application needs to set a
virtual vtkOpenGLRenderWindow with interactors that are also virtual, and
binding them with a physical window whenever necessary. Simply put, make
vtkOpenGLRenderWindow and the interactor purely ‘server’ objects to return
bitmaps (or video streams?). These server objects are fully functional and
independent of physical implementation. By doing this, the application never
needs to get into vtk code to change files such as vtkMFCWindow. <o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'> <o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'>A real scenario for
this. If this is possible, with a .Net wrapper, one can easily use Win Forms as
render window.<o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'> <o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'>It would be
tremendously helpful if the answer is YES, or can be YES. Your replies are
highly appreciated.<o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'> <o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'>Thanks,<o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'> <o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'>Frank Gao<o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'> <o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle19><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'> <o:p></o:p></span></font></span></p>
<p class=MsoNormal><span class=EmailStyle18><font size=2 color=black
face=Arial><span style='font-size:10.0pt;font-family:Arial'> </span></font></span><span
class=EmailStyle18><font color=black face=Arial><span style='font-family:Arial'><o:p></o:p></span></font></span></p>
</div>
</body>
</html>