![]() |
【转帖】hatch- solid predefined
hatch- solid predefined
hatch- solid predefined trying touse solid as predefined pattern name. angle works ok, but when i replace angle with solid it fails with message "invalid input". i have phatch->setpattern(oddbhatch::kpredefined, "solid" ); why does this not work please ?. thx cp strange... does this happens inside setpattern() or later? setpattern() may throw einvalidinput if pattern name is "solid" and type is other than oddbhatch::kpredefined. odwriteex sample creates a solid hatch. if exception is thrown later probably hatch boundary is not closed and triangulation fails. solid hatch must have all loops closed and this is not the case for other pattern types (not solid). sergey slezkin i have this problem at the moment, too. edit: this works: m_ptr->setpattern (oddbhatch::kpredefined, "solid"); m_ptr->appendloop (...); this not: m_ptr->appendloop (...); m_ptr->setpattern (oddbhatch::kpredefined, "solid"); last edited by math; 10th may 2006 at 02:36 amfff">. dear gentlemen, please note the following lines in dd documentation: loops must be closed, simple, and continuous. they must be self-intersecting itself only at their endpoints. their start points and end points must coincide. the outer loops must be appended before all of their inner loops. dwgdirect provides limited validation of the hatch boundary in order to maintain api efficiency and performance. oddbhatch doesn't perform any loop checks for non-solid hatch (since it doesn't lead to writing files, which can cause autocad problems). but for solid hatch checks are performed (when adding the loop or when changing the hatch pattern type). since checks are limited (in order to maintain api efficiency and performance), it is possible to get such results. the general rule here is - don't pass invalid input, and you won't get exception. sincerely yours, george udov |
所有的时间均为北京时间。 现在的时间是 11:40 AM. |