We value your input! Please participate in Archicad 28 Home Screen and Tooltips/Quick Tutorials survey
2015-03-21 04:42 AM - last edited on 2023-08-01 01:29 PM by Doreena Deng
GSModeler::Vertex targetPoint = camera->GetTargetPoint (); GSModeler::Vertex viewPoint = camera->GetViewPoint ();Thanks
2015-03-27 12:05 AM
2015-04-07 02:36 AM
2015-04-07 02:42 PM
API_3DProjectionInfo p; err = ACAPI_Environment (APIEnv_Get3DProjectionSetsID, &p, NULL); if (err == NoError && p.isPersp) { fov = p.u.persp.viewCone; }
2015-04-08 02:22 AM
2015-04-22 10:10 AM
paulk wrote:
How do I access the AC API from a rendering API pls? I cannot get ACAPI_Environment() to compile without error, even when I include ACAPinc.h.
2015-04-23 02:41 PM
ACAP_STAT.lib(ACAPlib.obj) : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in ConfigurationDlg.obj ACAP_STAT.lib(ACAPlib.obj) : error LNK2005: "int (__cdecl* _pRawDllMain)(void *,unsigned long,void *)" (?_pRawDllMain@@3P6AHPEAXK0@ZEA) already defined in OctaneRenderForArchiCAD_Renderer.obj ACAP_STAT.lib(ACAPlib.obj) : error LNK2005: "struct HINSTANCE__ * __cdecl DllMainImp_GetWindowsHInstance(struct DllMainImp_InitContext const *)" (?DllMainImp_GetWindowsHInstance@@YAPEAUHINSTANCE__@@PEBUDllMainImp_InitContext@@@Z) already defined in OctaneRenderForArchiCAD_Renderer.obj ACAP_STAT.lib(ACAPlib.obj) : error LNK2005: "struct DllMainImp_ResModuleSpec __cdecl DllMainImp_GetResModuleSpec(struct DllMainImp_InitContext const *)" (?DllMainImp_GetResModuleSpec@@YA?AUDllMainImp_ResModuleSpec@@PEBUDllMainImp_InitContext@@@Z) already defined in OctaneRenderForArchiCAD_Renderer.obj ACAP_STAT.lib(ACAPlib.obj) : error LNK2005: "__int64 __cdecl DllMainImp_OpenResModule(struct DllMainImp_InitContext const *)" (?DllMainImp_OpenResModule@@YA_JPEBUDllMainImp_InitContext@@@Z) already defined in OctaneRenderForArchiCAD_Renderer.obj ACAP_STAT.lib(ACAPlib.obj) : error LNK2005: "__int64 __cdecl DllMainImp_OpenResModuleFromSpec(struct DllMainImp_ResModuleSpec const *)" (?DllMainImp_OpenResModuleFromSpec@@YA_JPEBUDllMainImp_ResModuleSpec@@@Z) already defined in OctaneRenderForArchiCAD_Renderer.obj ACAP_STAT.lib(ACAPlib.obj) : error LNK2005: "void __cdecl DllMainImp_CloseResModule(__int64)" (?DllMainImp_CloseResModule@@YAX_J@Z) already defined in OctaneRenderForArchiCAD_Renderer.obj ACAP_STAT.lib(ACAPlib.obj) : error LNK2005: "struct DllMainImp_LocationSpec __cdecl DllMainImp_GetLocation(struct DllMainImp_InitContext const *)" (?DllMainImp_GetLocation@@YA?AUDllMainImp_LocationSpec@@PEBUDllMainImp_InitContext@@@Z) already defined in OctaneRenderForArchiCAD_Renderer.obj ACAP_STAT.lib(ACAPlib.obj) : error LNK2005: "int __cdecl _CRT_INIT_MY(void *,unsigned long,void *)" (?_CRT_INIT_MY@@YAHPEAXK0@Z) already defined in OctaneRenderForArchiCAD_Renderer.obj ACAP_STAT.lib(ACAPlib.obj) : error LNK2005: DllMain already defined in OctaneRenderForArchiCAD_Renderer.obj ACAP_STAT.lib(ACAPlib.obj) : error LNK2005: DllMainEntry already defined in OctaneRenderForArchiCAD_Renderer.obj LINK : fatal error LNK1104: cannot open file 'stlport_vc7.lib'Paul
2015-05-04 09:14 AM
2015-07-03 11:34 AM
MarkHenryC wrote:Hi Paul,
Any feedback from GS on this? It seems the rendering and general lib can't be compiled into the same plugin as they have DLL basic export functions (load etc) built in, so there's a name clash. Fetching info such as camera FOV and reading library item data can't be done via the rendering API, so there's a need to call the general API via the ACAP_STAT library. But it won't compile with the rendering libs.
UPDATE: need to do it the other way around. Build standard API then link with GSModelerImp.lib.
2015-07-05 01:02 AM
The FOV is stored as 'eyeAngle' in the ModelerAPI::Environment::ViewSetting class. I found only a way to pass this onto MakePicture, but I couldn't find how to read that from ARCHICAD. BTW, the default value is 60º.Thanks Akos. I still do not understand how to get the FOV. I could not find any way to access the ModelerAPI::Environment::ViewSetting class in MakePicture. Would you be able to post the code to do this pls?