public void SetLineColor(int leaderId, CadColor color) { if (!this.Set(leaderId, "寸法線の色設定", color.Code)) { throw new AutoCadException("Failed to set color to leader."); } }
//立体的に見て交差している座標を取得する。しかし、ポリラインのカーブ部分との交差判定がされなかったり、ブロックの属性にあたり判定があったりして使い物にならない。 //public List<PointD> GetIntersect3D(int objectIdA, int objectIdB) //{ // var args = new List<object>(); // args.Add(objectIdB); // args.Add((short)0); // var result = this.Get<object[], object[]>(objectIdA, "交点取得", args.ToArray()); // if (!result.Success) // throw new AutoCadException("Failed to get intersect."); // if (result.Value == null) // return new List<PointD>(); // List<PointD> list = new List<PointD>(); // foreach (object point in result.Value) // { // double[] dPoint = (double[])point; // list.Add(new PointD(dPoint[0], dPoint[1])); // } // return list; //} public void SetColor(int objectId, CadColor color) { if (!this.Set <int>(objectId, "色設定", color.Code)) { throw new AutoCadException("Failed to set color."); } }
public int Make(List <PointD> points, string text, double textSize, CadColor leaderColor, CadColor textColor) { int textId; var leaderId = this.Make(points, text, textSize, out textId); AutoCad.Db.Leader.SetLineColor(leaderId, leaderColor); AutoCad.Db.MText.SetColor(textId, textColor); return(leaderId); }
public void SetColorInsideBlock(int blockId, CadColor color) { //入れ子ブロックはとりあえずケアしない var ids = this.GetInsideObjects(blockId); foreach (var id in ids) { AutoCad.Db.Entity.SetColor(id, color); } }
public static void SetColorAll(CadColor color) { AutoCad.Command.SendLineEsc("CHPROP\nALL\n\nCOLOR\n" + color.CodeForCommand + "\n"); }
public static void SetColor(CadColor color) { AutoCad.Command.SendLineEsc("chprop\nall\n\nc\n" + color.Code + "\n"); }