|
If all else fails, you can read it using GDI+. However, I'd imagine the width and height are part of the metadata you could read with some research into the file format.
Christian Graus - Microsoft MVP - C++
"I am working on a project that will convert a FORTRAN code to corresponding C++ code.I am not aware of FORTRAN syntax" ( spotted in the C++/CLI forum )
|
|
|
|
|
this may help you[^]
Luc Pattyn [Forum Guidelines] [My Articles]
this weeks tips:
- make Visual display line numbers: Tools/Options/TextEditor/...
- show exceptions with ToString() to see all information
- before you ask a question here, search CodeProject, then Google
|
|
|
|
|
Can I convert maya binary file to .obj file...If so please tell me how can I do that.I only have maya learning edition.
thanks in advance
|
|
|
|
|
What are you hoping to achieve ? An obj file is a code file, and a maya file is surely not code, but data ?
Christian Graus - Microsoft MVP - C++
"I am working on a project that will convert a FORTRAN code to corresponding C++ code.I am not aware of FORTRAN syntax" ( spotted in the C++/CLI forum )
|
|
|
|
|
In my project I have to load an .obj file.I have only .obj file loader. But the original model is in maya binary file. So, I want to convert the maya binary file to .obj..
|
|
|
|
|
Christian Graus wrote: An obj file is a code file
There's an early graphics file format that, unfortunately, is also .obj for "3d Object". If I remember right, it's a text file that defines vertices, polygons, etc.
Mongkut to a Christian missionary friend: "What you teach us to do is admirable, but what you teach us to believe is foolish" .
|
|
|
|
|
Hello,
I'm developing an application windows CE(by using C# in VS2003).
I have Form1 in which i have 2 panels: panel1,panel2
In panel1, I have a textBox1 and a button "oK"
In panel2, I have only a textBox2.
I write this code in order to have the cursor in the textBox1(resp textBox2) when panel1(resp panel2) is shown:
public Form1()
{
panel2.Hide();
panel1.Show();
textBox1.Focus();
}
private void OK_Click(object sender, System.EventArgs e)
{
this.panel1.Hide();
this.panel2.Show();
textBox2.Focus();
}
But I have seen only the cursor in textBox1 of panel1.
Thank you
|
|
|
|
|
You may get a better response on the C# board[^]
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Hi there
I would like to use a expanding panel on my page which looks just like the tabs at the top of mozilla or IE7, except that it runs down the page instead of across the top, and when a tab is selected it opens left to right, as if coming out of the left side of the screen. Preferably when it opens it should give a similar effect to the AJAX collapsable panel with a fade smooth fade in and out, or for those of you who have seen the XBOX360 interfaces tabbing system, then similar to that. The AJAX panel unfortunately only moves up and down. Does anyone have any code which they have used before to accomplish something similar or have a link to a tool which can provide this feature???
Any help would be greatly appreciated as I am out of ideas of where to look, or what to search for.
Thanks...
Dev
|
|
|
|
|
I´m new here, so I want to ask you guys if you could tell me how to (or point me in the right direction) composite my logo (with transparency) over live video. Kind of like what networks do when they place their logos over their signal. I am good at VB6, and am learning VB.NET. Should I do it in VC++?
Please help me, I am very interested in graphics programming.
jondiego
|
|
|
|
|
Check out Virtual Dub[^]
They have an overlay filter and might have the source code for it there.
Cheers,
Drew.
|
|
|
|
|
Drew, I really appreciate your response; I am new to this whole forum thing and thought noone would ever really read my post. Thanks again and when I try it I will tell you how im doing.
Juan Diego.
|
|
|
|
|
Lots of us read your post. Not lots of us know how to do it in VB.
OK, I can't say that - I meant I can't do it in VB
If you have access to each frame before it's rendered, you can draw the logo
on top of the frame bitmap then render it.
How is your video being rendered?
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
jondiego wrote: I really appreciate your response;
No problem!
jondiego wrote: I am new to this whole forum thing and thought noone would ever really read my post.
Just be patient. There are lots of people here that want to help. It would probably help if you try yourself first so you can ask more specific questions.
This topic can be quite complicated, depending on the video stream you want to work with.
In essence, you need to retrieve decoded frames, overlay an image and then encode the stream again. The overlay part is very simple (check here on CP for lots of articles on how to do this using various languages). The decoding and encoding is done using a codec, of which many are available (some for pay, some from the public domain).
jondiego wrote: Thanks again and when I try it I will tell you how im doing.
Sounds great - it will be nice to hear how it works out for you.
Cheers,
Drew.
|
|
|
|
|
I forgot to mention that in the TV industry those logos are called "bugs".
Cheers,
Drew.
|
|
|
|
|
Trying to emulate the code presented in this article:
http://www.codeproject.com/vb/net/bitmapTxtr.asp
The method employed in the article is the following
1) Convert texture to grayscale by a method which results in the R, G, and B channels being identical.
2) Make the alpha channel the same as the other three channels as well. Then,
3) Scale the alpha channel by some percentage indicating desired degree of transparency ('float textureTransparency' in code from article)
4) Draw Texture to Bitmap.
The code I've written is not identical to that from the article but *should* be effectively the same. However, in my code if I leave out step 2 completely, it makes no difference - the visible results are exactly the same (meaning in my own application the results are the same - I didn't use bitmap from article). This is not what I would expect. I think the article writer said he was primarily a VB programmer, so he may not know what he's doing. (I'm not an expert in GDI+ either.) Should step 2 change the results or not? Can someone answer this definitively?
-- modified at 15:16 Friday 3rd August, 2007
|
|
|
|
|
Dear ATL C++ / graphics people,
I already searched the forums, but found no answer, just questions to
this topic. So I'll try my luck and post my question:
I am searching for an easy way to load a sequence of jpeg files (which
form a video) into memory and play them like a video. I furthermore
want to react on a keypress by drawing a frame into the current jpeg
in the sequence and saving it to disk/memory (maybe to disk not during
play, but after it, since there should not be delays, performance
does matter!). Is there a simple way to do this with the ATL already?
A little navigation functionality would be great (jumping to specific
frames, having a slider, Play/Stop Button etc.)
Did anyone already do something like that? I want to use pure ATL
and no MFC since I have a guideline to use ATL only.
Would be nice if that would be possible and anyone could help.
Best regards,
Peter.
|
|
|
|
|
hi
i need help about drawing shape and object with gdi+ and then select each object by mouse and can change some properties ?
thx
|
|
|
|
|
What part of the process do you need help with?
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
how can i select a drawn object when mouse click on it?
for example i draw a circle and then a rectangel.
now i want to click on circle to select it and move it by mouse .
|
|
|
|
|
It's up to you to keep track of where you draw the objects.
With that saved info, you can perform "hit-testing", where you take the cursor position and
determine which drawn object the cursor is on.
To drag an object, the typical method is (in pseudocode):
On WM_LBUTTONDOWN
if mousecursor on an object (hit-test)
capture mouse (SetCapture())
save base cursor position
On WM_MOUSEMOVE
if mouse captured
if cursor position different than base cursor position
erase object at current its location
draw object at its new location (use delta from base cursor position)
set base cursor position to the current cursor position
On WM_LBUTTONUP
if mouse captured
release mouse capture (ReleaseCapture())
MArk
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
my problem excatly is how to hit testing ?
which class and command must use ?
thx
|
|
|
|
|
You need some way to decide if the cursor is on an object.
The simplest way is to use the bounding rectangle. The problem with this is hollow, overlapped objects.
You can use the PtInRect() API to test for a rectangle.
A little more complicated is to use regions.
You can use the PtInRegion() API to test for a rectangle.
You can make it as complicated as it needs to be.
There's lots of articles about hit testing. Here's one example: Win32: Hit Testing Lines and Curves[^]
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Mark Salsbery wrote: To drag an object, the typical method is (in pseudocode):
On WM_LBUTTONDOWN
if mousecursor on an object (hit-test)
capture mouse (SetCapture())
save base cursor position
On WM_MOUSEMOVE
if mouse captured
if cursor position different than base cursor position
erase object at current its location
draw object at its new location (use delta from base cursor position)
set base cursor position to the current cursor position
On WM_LBUTTONUP
if mouse captured
release mouse capture (ReleaseCapture())
You only need SetCapture() to detect the mouse outside the client area of the application.
You don't want to erase the entire object with each mouse move detection - only the part that's actually moved. If the mouse moves one pixel most of the object hasn't moved at all. If you erase the entire object each time there will be screen flashes.
Well, maybe that's what you meant by "use delta from base cursor position".
Nevermind.
|
|
|
|
|