9.5 + GetFirstMaterial?

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 21/11/2005 at 15:51, xxxxxxxx wrote:

User Information:
Cinema 4D Version:   9.5 
Platform:   Windows  ; Mac  ;  Mac OSX  ; 
Language(s) :     C++  ;

---------
I am having a problem with GetFirstMaterial with 9.5.
I broke my code down to the simplest form:

  
BaseDocument* doc = LoadDocument(fn,FALSE,NULL);  
if (!doc) return FALSE;  
BaseMaterial* mat = doc->GetFirstMaterial();  

and mat is always NULL.
The debugger reports the value for mat\BaseList2D "CXX0030: Error: expression cannot be evaluated"

fn is a valid filename and does contain materials.

I am using vc6.

Is this a problem with 9.5 or am I missing a step or something?

-Chris

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 22/11/2005 at 02:14, xxxxxxxx wrote:

The correct sintax is:_<_h4_>_

BaseDocument* LoadDocument(const Filename& name, LONG loadflags, BaseThread* thre_<_h4_>_H4>

Similar "LoadFile" but this time the document isn't put into the editors list of documents and you have control over the document_<_h5_>_> _<_h5_>_eturn
> BaseDocument*
>
>> Document that was loaded, or NULL if it failed.
>
> <_<_h5_>_CKQUOTE>
>
> ##### _<_h5_>_rameters_
>
>> const Filename & name
>>
>>> File to load the document from.
>>
>> LONG loadflags
>>
>>> Flags for the loader:
>
>>>
>>>> Constant | Description
>>>> ---|---
>>>>
>>>>

\>>>>     
\>>>>     
\>>>>     SCENEFILTER_OBJECTS
\>>>> 
\>>>> 

>>>>
>>>> |
>>>>
>>>> Load/save only the objects and associated items, such as materials used.
>>>>
>>>>

\>>>>     
\>>>>     
\>>>>     SCENEFILTER_MATERIALS
\>>>> 
\>>>> 

>>>>
>>>> |
>>>>
>>>> Load/save only the materials.
>>>>
>>>>

\>>>>     
\>>>>     
\>>>>     SCENEFILTER_DIALOGSALLOWED
\>>>> 
\>>>> 

>>>>
>>>> |
>>>>
>>>> Flag to inform your plugin that a dialog can be displayed if you wish, if this flag not set then no dialogs must be opened.
>>>>
>>>>

\>>>>     
\>>>>     
\>>>>     SCENEFILTER_PROGRESSALLOWED
\>>>> 
\>>>> 

>>>>
>>>> |
>>>>
>>>> Flag to inform your plugin that a progress bar can be displayed if you wish. The progress bar can be set by calling StatusSetBar.
>>>>
>>>>

\>>>>     
\>>>>     
\>>>>     SCENEFILTER_MERGESCENE
\>>>> 
\>>>> 

>>>>
>>>> |
>>>>
>>>> Flag to inform your plugin that this is a merge operation, i.e. that the document you're inserting to is an existing scene.
>>>
>>>
>
>>
>> BaseThread* thread
>>
>>> The current thread, or NULL for the main CINEMA 4D thread. The caller owns the pointed object.
>>>
>>> I think that u miss or put correctly flags & threads.
>>>
>>> Bye

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 22/11/2005 at 02:40, xxxxxxxx wrote:

Unlike older versions without this argument, the loadflags look to be necessary. Have you tried SCENEFILTER_OBJECTS or SCENEFILTER_MATERIALS for the loadflags argument?

As I'm supporting older versions with older SDKs, I hadn't noticed this change (new to R9.5 for sure!).

THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

On 22/11/2005 at 05:46, xxxxxxxx wrote:

LOL
I can't tell you how many times I looked over LoadDocument in the 9.5 sdk docs and never realized that "Bool show_error" had been replaced with "LONG loadflags".

Thanks guys. It's working now.

-Chris