明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2906|回复: 4

填充图案时,会出现“填充图案太密”

[复制链接]
发表于 2012-1-5 10:00:04 | 显示全部楼层 |阅读模式
用C#做的开发,在对多线段封闭的矩形进行填充时,填充比例不变时(如为0.5),当长宽超过一定值时,会出现“填充图案太密”的错误提示!请问这种情况应该怎么处理呢?
填充比例不能改变的!

          /// <summary>
         /// 图形填充测试
        /// </summary>
        private void Hatch()
        {
            string path = Application.StartupPath;
            aDocument.Application.Preferences.Files.SupportPath += ";" + path;

            IAcadHatch hatch = aDocument.ModelSpace.AddHatch((int)AcPatternType.acHatchPatternTypeUserDefined, "gksy", true, AcHatchObjectType.acHatchObject);
            double XPoint = (double)nudXPoint.Value;
            double YPoint = (double)nudYPoint.Value;
            double height = (double)nudLength.Value;
            double width = (double)nudWidth.Value;
            double scale = (double)nudScale.Value;
            //矩形封闭区域
            AcadLWPolyline line = aDocument.ModelSpace.AddLightWeightPolyline(
                new double[] { XPoint, YPoint,
                    XPoint, YPoint + height,
                    XPoint + width, YPoint + height,
                    XPoint + width, YPoint });
            //封闭多段线
            line.Closed = true;
            AcadEntity[] array = new AcadEntity[] { line as AcadEntity };
            hatch.AppendOuterLoop(array);
            hatch.PatternScale = scale;
            //显示填充图案
            try
            {
                hatch.Evaluate();
                lblMessage.Text = "生成完成!";
            }
            catch (Exception ex)
            {
                lblMessage.Text = ex.Message;
            }
            lblMessage.Visible = true;
        }

发表于 2012-1-5 14:17:21 | 显示全部楼层
(setenv "MaxHatch" "10000000")
这个是 lisp的做法,C#也应该是类似的吧。
发表于 2012-1-5 14:40:41 | 显示全部楼层
封装类到AutoCAD 2012应该还是没有提供读写AutoCAD环境变量的专用函数,不过AutoCAD环境变量的读写也就是注册表的读写,比如在HKEY_CURRENT_USER\Software\Autodesk\AutoCAD\R17.1\ACAD-6001:804\FixedProfile\General写入MaxHatch键,键值为"10000000",即等同于楼上的Lisp语句.
发表于 2012-3-2 08:07:42 | 显示全部楼层
貌似很强大啊!
发表于 2012-3-27 16:49:09 | 显示全部楼层
最简单的方法是把你的scale设置大一些
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-12-22 23:06 , Processed in 0.256944 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表