Home
Reply
Contributor
kleinstein
Posts: 6

warning: polygon handedness must be set for display lists to have an effect

i get always this warning message window, if i open some model.
 
in which segment should i put this?
 
//
HC_Set_Heuristics("polygon handedness=left");
//
 
or should i do something else?
 
/*********************************************************************/
if (Learning == happy) { return true; }
Spatial Employee
Bashi
Posts: 22

Re: warning: polygon handedness must be set for display lists to have an effect

Hi,
 
It might be helpful if you can make the program stopped and see callstack when you face HOOPS warning dialog box.
This is what I usually do.
1) Open hoops 3dGS project using VC. (ex. hoops_3dgs_vc80.vcproj)
2) Open win32_report_error.c and modify code as below so that suppress check invoke assert signal.
 
GLOBAL_FUNCTION void HC_CDECL HC_Report_Error (
  :
 if (suppress_all) {
  register HT_Error_Control * control;
  assert(false); // Bashi: <<<<<<<<<<<<<<<
  _asm int 3;
  OUR (error_mask) |= 1 << severity;
  /* all off at this level, so remove individual controls */
  while ((control = OUR (error_control)[severity]) != null) {
   OUR (error_control)[severity] = control->next;
   FREE (control, HT_Error_Control);
  }
 }
 
3) Compile and rebuild hoops3dgs dll
 
Now you can debug application by checking "suppress all" and click OK button.
 
I also got the warning message, and my call stack was as below.
 
> msvcr80d.dll!_wassert(const wchar_t * expr=0x1c7957ec, const wchar_t * f
  hoops1500_vc80d.dll!HC_Report_Error(int category=9, int specific=411, in
  hoops1500_vc80d.dll!HI_Generate_Error(int category=9, int specific=411,
  hoops1500_vc80d.dll!HI_Warning(int category=9, int specific=411, const c
  hoops1500_vc80d.dll!_hoops_IHIPP(const ht_net_rendition * inr=0x06252084
  hoops1500_vc80d.dll!HD_Std_3D_Polyhedron(const ht_net_rendition * nr=0x0
  hoops1500_vc80d.dll!ogl_render(const ht_net_rendition * nr=0x06251f64, c
  hoops1500_vc80d.dll!HD_Standard_Draw_Tree(const ht_net_rendition * inr=
  hoops1500_vc80d.dll!HD_Standard_Draw_Tree(const ht_net_rendition * inr=
  hoops1500_vc80d.dll!HD_Standard_Draw_Tree(const ht_net_rendition * inr=
  hoops1500_vc80d.dll!HD_Standard_Draw_Tree(const ht_net_rendition * inr=
  hoops1500_vc80d.dll!HD_Standard_Draw_Tree(const ht_net_rendition * inr=
  hoops1500_vc80d.dll!HD_Standard_Draw_Tree(const ht_net_rendition * inr=
  hoops1500_vc80d.dll!_hoops_SCCHP(const ht_net_rendition * inr=0x06251ea
 
The 5th argument for HD_Standard_Draw_Tree is the segment: HT_Segment.
HT_Segment has "name" member data which represent the name of the segment.
Here is one of candidates you should place HC_Set_Heuristics("polygon handedness=left"); or  HC_Set_Heuristics("polygon handedness=right"); .
 
I think the important factor regarding programing with HOOPS is to design segment structure.
HOOPS has plenty of flexibility, so it's always recommended to review your segment structure and decide the segment where you set attributes and settings.
 
I hope this helps.
Spatial Employee
Bashi
Posts: 22

Re: warning: polygon handedness must be set for display lists to have an effect

I forgot to mention that it may be necessary that the hoops dll that is located in <ACIS Install dir>/bin/NT_VC8_DLLD (for VS2005 platform) is removed or renamed, in case that you rebuild HOOPS libraries.
This will make sure that your dll is used. I recommend you to check Output Window of VC and confirm that your dll is loaded when Debug run.
 
Thanks,
 
Bashi
 
Contributor
kleinstein
Posts: 6

Re: warning: polygon handedness must be set for display lists to have an effect

in the meantime hoops is changed in many areas..

and HOOPS 17 has no win32_report_error.c file.

 

could you tell me your nice instruction again for HOOS 17?

/*********************************************************************/
if (Learning == happy) { return true; }
Spatial Employee
Bashi
Posts: 22

Re: warning: polygon handedness must be set for display lists to have an effect

Hi Kleinstein,

 

With HOOPS17, I put a break pointer at line #1285 in <HOOPS_INSTALL_DIR>\Dev_Tools\hoops_3dgs\sourcewin32_system.cpp.

If you click the check box "suppress all" in the dialog, application will stop at the break pointer.

 

Thanks,

 

    Bashi