几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   DirectDWG (http://www.dimcax.com/hust/forumdisplay.php?f=89)
-   -   【转帖】ranslating Hatch Pattern (http://www.dimcax.com/hust/showthread.php?t=18809)

yang686526 2009-05-07 05:14 PM

【转帖】ranslating Hatch Pattern
 
translating hatch pattern?
translating hatch pattern?
hi,
is there a way to translate a hatch pattern with some vector.
i.e. to move a virtual "origin point" of the hatch.
as i know it is always calculated from 0,0
thanks in advance for any help.
regards
chudomir
hi chudomir,
have you tried odhatchpattern.m_basepoint?
with this variable you can define the origin point of hatch (hatch will be drawn through this point).
created hatch pattern must not be kuserdefined.
hope it helps.
best regards, tomaz
quote:
originally posted by chudo
hi,
is there a way to translate a hatch pattern with some vector.
i.e. to move a virtual "origin point" of the hatch.
as i know it is always calculated from 0,0
thanks in advance for any help.
regards
chudomir
as i know it's impossible to move hatch origin in autocad without defining new moved pattern.
if it's suitable for you the hatch entity can be inserted into a block which is moved.
sergey slezkin
thank you very much, tomaz and sergey, for you replies.
but actually i do need to move the origin of the hatch pattern withouth changing the pattern.
it is possible in acad though: the users and list programmer just move the snapbase system variable and then update the hatch.
autocad renders the hatch with origin (0,0,0), not in world coordinates, but in ucs. so when you move the snapbase point to the e.g. bottom left of your hatched rect, then the bricks would start from there, until you don't update that hatch again. is it the same in dwgdirect. i tried with translated ucs, but the hatch did not seem to be updated.
here is a lisp routine that runs a move hatch oridin command in acad:
i don't know lisp, but this code here probably just moves snapbase, then update the hatch, then turn the snap base back.
code:
(defun c:adjust (/)
(setvar "cmdecho" 0)
(setq obj (entsel "\nselect hatch pattern to edit:"))
(setq pt1 (getpoint "\nselect new starting point of hatch pattern:"))
(setq xcord (car pt1))
(setq ycord (cadr pt1))
(setq sp1 (list xcord ycord))
(setvar "snapbase" sp1)
(command "-hatchedit" obj "p" "" "" "")
(command "snapbase" "0,0")
(princ)
)
can this be simulated in dwgdirect too? it would be really great and much appreciated. if not i can try to change the hatch pattern then...
thanks for you help.
regards
chudomir
hi chudomir,
thanks a lot for pointing this out. i was not aware about snapbase effecting hatch pattern translation. we'll implement it in next dd release.
sergey slezkin
thanks, that would be great.
regards
chudomir


所有的时间均为北京时间。 现在的时间是 06:58 AM.