查看单个帖子
旧 2009-05-06, 07:32 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】oddbdatabasesetsysvar90 invalid execution

oddbdatabase::setsysvar() invalid execution
oddbdatabase::setsysvar() invalid execution
wondering how to work with oddbdatabase::setsysvar() method.
have not found any notice in documentation as well as in example code.
when i try to set limmin using following code:
pdb->setsysvar( "limmin" , odresbuf::newrb( odresbuf::krtpoint3d , odgepoint3d( x , y, .0 ) ) );
i have following assertion:
---------------------------
microsoft visual c++ runtime library
---------------------------
assertion failed!
file: source\resbuf.cpp
line: 448
expression: invalid execution.
thanks in advance.
nickolay gurov.
system variables can be set not only by oddbdatabase::setsysvar() method but by methods like oddbdatabase::setclayer(), setcecolor() etc.
system variables and their default values are listed in sysvardefs.h
this header is used for creating getxxx(), setxxx() functions, initialization etc.
var_def macro describes variables stored in database.
regvar_def - varibles stored by autocad in registry and by dd in host application.
ro_var_def macro - read-only variables.
limmin & limmax are limits of active space. they are read-only.
use oddblayout::setlimmin() for corresponding space.
sergey slezkin
docs suggestion
sergey, thank you for quick and usefull reply.
one more suggestion: usability of documentation!
in help file supplied with headers version 1.09 i do not see any mention of setx / getx methods related to system variables. i suppose this is some kind of docs generator problem. note that i found these methods in help file for version 1.07.
generally i use objectarx reference for general questions because it is more detailed. i saw setx/getx methods for addbdatabase class but did not try to use them as far as they were not mentioned in directdwg help.
also i should notice that i often use help file from version 1.07 to find header file where some class is defined - i do not know how to find it out using newer help files.
nickolay gurov.
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)