GroupsStore.cs 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. using FastReport.Export.Dxf.Groups;
  2. using System.Collections.Generic;
  3. namespace FastReport.Export.Dxf
  4. {
  5. public class GroupsStore
  6. {
  7. #region Private Fields
  8. private List<GroupBase> groups;
  9. #endregion Private Fields
  10. #region Public Properties
  11. public List<GroupBase> Groups
  12. {
  13. get { return groups; }
  14. set { groups = value; }
  15. }
  16. #endregion Public Properties
  17. #region Public Constructors
  18. public GroupsStore()
  19. {
  20. groups = new List<GroupBase>();
  21. }
  22. #endregion Public Constructors
  23. #region Public Methods
  24. public void AddColor(byte aciColor)
  25. {
  26. Groups.Add(GroupUtils.CreateGroup(62, aciColor));
  27. }
  28. public void AddEntityThickness(float value)
  29. {
  30. AddGroupDouble(370, (int)(value * 100));
  31. }
  32. public void AddFourthPoint(float x, float y)
  33. {
  34. AddGroupDouble(13, x);
  35. AddGroupDouble(23, y);
  36. }
  37. public void AddGroup<T>(int x, T y)
  38. {
  39. GroupUtils.AppendGroup(groups, x, y);
  40. }
  41. public void AddGroup(GroupBase group)
  42. {
  43. groups.Add(group);
  44. }
  45. public void AddGroupDouble(int x, float y)
  46. {
  47. Groups.Add(GroupUtils.CreateGroupDouble(x, y));
  48. }
  49. public void AddName(string value)
  50. {
  51. Groups.Add(GroupUtils.CreateName(value));
  52. }
  53. public void AddPrimary2DPoint(float x, float y)
  54. {
  55. AddGroupDouble(10, x);
  56. AddGroupDouble(20, y);
  57. }
  58. public void AddSecondPoint(float x, float y)
  59. {
  60. AddGroupDouble(11, x);
  61. AddGroupDouble(21, y);
  62. }
  63. public void AddThirdPoint(float x, float y)
  64. {
  65. AddGroupDouble(12, x);
  66. AddGroupDouble(22, y);
  67. }
  68. public void AddTypeName(string value)
  69. {
  70. Groups.Add(GroupUtils.CreateTypeName(value));
  71. }
  72. #endregion Public Methods
  73. }
  74. }