microstation 0.4.1 → 0.8.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (110) hide show
  1. checksums.yaml +7 -0
  2. data/.autotest +23 -23
  3. data/.rspec +2 -2
  4. data/Gemfile +29 -10
  5. data/History.txt +6 -6
  6. data/LICENSE.adoc +22 -0
  7. data/Manifest.txt +91 -60
  8. data/README.adoc +131 -0
  9. data/Rakefile +72 -30
  10. data/bin/dgn2pdf +36 -37
  11. data/bin/dgn_template +107 -0
  12. data/bin/pw_print +35 -0
  13. data/cad_files/drawing_faatitle_in_non_default_model.dgn +0 -0
  14. data/cad_files/drawing_no_block.dgn +0 -0
  15. data/cad_files/drawing_with_3_block.dgn +0 -0
  16. data/cad_files/drawing_with_block.dgn +0 -0
  17. data/cad_files/drawing_with_text.dgn +0 -0
  18. data/cad_files/seed2d.dgn +0 -0
  19. data/cad_files/seed3d.dgn +0 -0
  20. data/lib/microstation/app.rb +781 -286
  21. data/lib/microstation/cad_input_queue.rb +100 -25
  22. data/lib/microstation/cell.rb +191 -0
  23. data/lib/microstation/changer.rb +70 -0
  24. data/lib/microstation/configuration.rb +193 -57
  25. data/lib/microstation/criteria_creation_t.rb +23 -0
  26. data/lib/microstation/dir.rb +252 -252
  27. data/lib/microstation/directory.rb +46 -0
  28. data/lib/microstation/drawing.rb +686 -189
  29. data/lib/microstation/element.rb +311 -0
  30. data/lib/microstation/enumerator.rb +32 -29
  31. data/lib/microstation/errors.rb +17 -0
  32. data/lib/microstation/event_handler.rb +28 -0
  33. data/lib/microstation/ext/pathname.rb +23 -25
  34. data/lib/microstation/ext/win32ole.rb +7 -0
  35. data/lib/microstation/extensions/faa.rb +124 -0
  36. data/lib/microstation/file_tests.rb +68 -0
  37. data/lib/microstation/functions.rb +60 -0
  38. data/lib/microstation/graphics.rb +35 -0
  39. data/lib/microstation/line.rb +19 -0
  40. data/lib/microstation/model.rb +45 -0
  41. data/lib/microstation/model_trait.rb +189 -0
  42. data/lib/microstation/ole_cad_input_message.rb +101 -0
  43. data/lib/microstation/ole_helper.rb +152 -0
  44. data/lib/microstation/pdf_support.rb +40 -40
  45. data/lib/microstation/point3d.rb +71 -0
  46. data/lib/microstation/primitive_command_interface.rb +66 -0
  47. data/lib/microstation/properties.rb +61 -57
  48. data/lib/microstation/property_handler.rb +48 -0
  49. data/lib/microstation/scan/color.rb +38 -38
  50. data/lib/microstation/scan/criteria.rb +89 -85
  51. data/lib/microstation/scan/klass.rb +43 -43
  52. data/lib/microstation/scan/level.rb +38 -38
  53. data/lib/microstation/scan/line_style.rb +45 -45
  54. data/lib/microstation/scan/line_weight.rb +33 -33
  55. data/lib/microstation/scan/range.rb +19 -0
  56. data/lib/microstation/scan/scan_trait.rb +51 -0
  57. data/lib/microstation/scan/subtype.rb +40 -40
  58. data/lib/microstation/scan/type.rb +134 -109
  59. data/lib/microstation/scan_trait.rb +62 -0
  60. data/lib/microstation/scanner.rb +24 -24
  61. data/lib/microstation/tag.rb +87 -58
  62. data/lib/microstation/tag_set.rb +385 -280
  63. data/lib/microstation/tag_set_trait.rb +51 -0
  64. data/lib/microstation/tagged_element.rb +105 -0
  65. data/lib/microstation/template.rb +90 -84
  66. data/lib/microstation/template_info.rb +172 -0
  67. data/lib/microstation/template_runner.rb +65 -0
  68. data/lib/microstation/text.rb +79 -54
  69. data/lib/microstation/text_node.rb +124 -74
  70. data/lib/microstation/ts/attribute.rb +140 -139
  71. data/lib/microstation/ts/instance.rb +146 -112
  72. data/lib/microstation/ts/tagset_trait.rb +49 -0
  73. data/lib/microstation/types.rb +91 -91
  74. data/lib/microstation/version.rb +5 -0
  75. data/lib/microstation/wrap.rb +28 -214
  76. data/lib/microstation.rb +252 -88
  77. data/plot/pdf-bw.plt +164 -164
  78. data/plot/pdf.plt +163 -163
  79. data/plot/png.plt +383 -383
  80. data/plot/tiff.plt +384 -384
  81. data/plot/wmbw.tbl +324 -66
  82. data/plot/wmcolor.tbl +62 -62
  83. data/spec/microstation/app_spec.rb +184 -0
  84. data/spec/microstation/configuration_spec.rb +131 -0
  85. data/spec/microstation/drawing_spec.rb +245 -0
  86. data/spec/microstation/functions_spec.rb +36 -0
  87. data/spec/microstation/tag_set_spec.rb +159 -0
  88. data/spec/microstation/template_spec.rb +159 -0
  89. data/spec/microstation/text_node_spec.rb +67 -0
  90. data/spec/microstation/text_spec.rb +42 -0
  91. data/spec/microstation_spec.rb +47 -36
  92. data/spec/spec_helper.rb +97 -31
  93. metadata +308 -84
  94. data/.gemtest +0 -0
  95. data/README.txt +0 -75
  96. data/lib/microstation/attributes.rb +0 -35
  97. data/lib/microstation/extensions/hash.rb +0 -27
  98. data/spec/app_spec.rb +0 -267
  99. data/spec/configuration_spec.rb +0 -122
  100. data/spec/drawing_spec.rb +0 -247
  101. data/spec/drawings/new_drawing.dgn +0 -0
  102. data/spec/drawings/test.dgn +0 -0
  103. data/spec/drawings/test1.dgn +0 -0
  104. data/spec/drawings/testfile.pdf +0 -0
  105. data/spec/enumerator_spec.rb +0 -60
  106. data/spec/scanner_spec.rb +0 -155
  107. data/spec/spec_app.rb +0 -11
  108. data/spec/tag_set_spec.rb +0 -123
  109. data/spec/text_node_spec.rb +0 -92
  110. data/spec/text_spec.rb +0 -62
@@ -1,38 +1,38 @@
1
- module Microstation
2
-
3
- module Scan
4
-
5
- module Level
6
-
7
- def level_inclusions
8
- @level_inclusions ||= []
9
- end
10
-
11
- def include_level(level)
12
- level_inclusions << level
13
- end
14
-
15
- def reset_levels
16
- reset_ole_levels
17
- @level_inclusions = []
18
- end
19
-
20
- def reset_ole_levels
21
- ole_obj.ExcludeAllLevels
22
- end
23
-
24
- def resolve_level_scans
25
- return unless level_inclusions.size > 0
26
- reset_ole_levels
27
- level_inclusions.each do |level|
28
- ole_obj.IncludeLevel(level)
29
- end
30
- end
31
-
32
- end
33
-
34
- end
35
-
36
- end
37
-
38
-
1
+ module Microstation
2
+
3
+ module Scan
4
+
5
+ module Level
6
+
7
+ def level_inclusions
8
+ @level_inclusions ||= []
9
+ end
10
+
11
+ def include_level(level)
12
+ level_inclusions << level
13
+ end
14
+
15
+ def reset_levels
16
+ reset_ole_levels
17
+ @level_inclusions = []
18
+ end
19
+
20
+ def reset_ole_levels
21
+ ole_obj.ExcludeAllLevels
22
+ end
23
+
24
+ def resolve_level_scans
25
+ return unless level_inclusions.size > 0
26
+ reset_ole_levels
27
+ level_inclusions.each do |level|
28
+ ole_obj.IncludeLevel(level)
29
+ end
30
+ end
31
+
32
+ end
33
+
34
+ end
35
+
36
+ end
37
+
38
+
@@ -1,45 +1,45 @@
1
- module Microstation
2
-
3
- module Scan
4
-
5
- module LineStyle
6
-
7
- def linestyles
8
- @app.active_design_file.LineStyles rescue []
9
- end
10
-
11
-
12
- def linestyle_inclusions
13
- @linestyle_inclusions ||= []
14
- end
15
-
16
- def include_linestyle(style)
17
- linestyle_inclusions << style
18
- end
19
-
20
- def reset_linestyles
21
- reset_ole_linestyles
22
- @linestyle_inclusions = []
23
- end
24
-
25
- def reset_ole_linestyles
26
- ole_obj.ExcludeAllLineStyles
27
- end
28
-
29
- def resolve_linestyle_scans
30
- return unless linestyle_inclusions.size > 0
31
- reset_ole_linestyles
32
- linestyle_inclusions.each do |linestyle|
33
- ole_obj.IncludeLineStyle(linestyle)
34
- end
35
- end
36
-
37
- end
38
-
39
- end
40
-
41
- end
42
-
43
-
44
-
45
-
1
+ module Microstation
2
+
3
+ module Scan
4
+
5
+ module LineStyle
6
+
7
+ def linestyles
8
+ @app.active_design_file.LineStyles rescue []
9
+ end
10
+
11
+
12
+ def linestyle_inclusions
13
+ @linestyle_inclusions ||= []
14
+ end
15
+
16
+ def include_linestyle(style)
17
+ linestyle_inclusions << style
18
+ end
19
+
20
+ def reset_linestyles
21
+ reset_ole_linestyles
22
+ @linestyle_inclusions = []
23
+ end
24
+
25
+ def reset_ole_linestyles
26
+ ole_obj.ExcludeAllLineStyles
27
+ end
28
+
29
+ def resolve_linestyle_scans
30
+ return unless linestyle_inclusions.size > 0
31
+ reset_ole_linestyles
32
+ linestyle_inclusions.each do |linestyle|
33
+ ole_obj.IncludeLineStyle(linestyle)
34
+ end
35
+ end
36
+
37
+ end
38
+
39
+ end
40
+
41
+ end
42
+
43
+
44
+
45
+
@@ -1,33 +1,33 @@
1
- module Microstation
2
-
3
- module Scan
4
-
5
- module LineWeight
6
-
7
- def lineweight_inclusions
8
- @lineweight_inclusions ||= []
9
- end
10
-
11
- def include_lineweight(weight)
12
- lineweight_inclusions << weight
13
- end
14
-
15
- def reset_lineweights
16
- reset_ole_linestyles
17
- @lineweight_inclusions = []
18
- end
19
-
20
- def reset_ole_lineweights
21
- ole_obj.ExcludeAllLineWeights
22
- end
23
-
24
- def resolve_lineweight_scans
25
- return unless lineweight_inclusions.size > 0
26
- reset_ole_lineweights
27
- lineweight_inclusions.each do |lineweight|
28
- ole_obj.IncludeLineWeight(lineweight)
29
- end
30
- end
31
- end
32
- end
33
- end
1
+ module Microstation
2
+
3
+ module Scan
4
+
5
+ module LineWeight
6
+
7
+ def lineweight_inclusions
8
+ @lineweight_inclusions ||= []
9
+ end
10
+
11
+ def include_lineweight(weight)
12
+ lineweight_inclusions << weight
13
+ end
14
+
15
+ def reset_lineweights
16
+ reset_ole_linestyles
17
+ @lineweight_inclusions = []
18
+ end
19
+
20
+ def reset_ole_lineweights
21
+ ole_obj.ExcludeAllLineWeights
22
+ end
23
+
24
+ def resolve_lineweight_scans
25
+ return unless lineweight_inclusions.size > 0
26
+ reset_ole_lineweights
27
+ lineweight_inclusions.each do |lineweight|
28
+ ole_obj.IncludeLineWeight(lineweight)
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,19 @@
1
+ module Microstation
2
+
3
+ module Scan
4
+
5
+ module Range
6
+
7
+ def include_within_range(range)
8
+ ole_obj.IncludeOnlyWithinRange(range)
9
+ end
10
+
11
+ def range_from_points(pt1,pt2)
12
+ app.Range3dFromPoint3dPoint3d(pt1,pt2)
13
+ end
14
+
15
+ end
16
+ end
17
+
18
+
19
+ end
@@ -0,0 +1,51 @@
1
+ module Microstation
2
+
3
+
4
+ module ScanTrait
5
+
6
+ def create_scanner(&block)
7
+ app.create_scanner(&block)
8
+ end
9
+
10
+ def scan_graphical(&block)
11
+ sc = create_scanner
12
+ sc.ExcludeNonGraphical
13
+ self.scan(sc,&block)
14
+ end
15
+
16
+ def scan_text(&block)
17
+ sc = create_scanner do
18
+ include_textual
19
+ end
20
+ self.scan(sc,&block)
21
+ end
22
+
23
+ def scan(criteria)
24
+ scan_result = ole_run_scan(criteria)
25
+ return [] unless scan_result
26
+ scan_enum = Microstation::Enumerator.new(scan_result)
27
+ result = []
28
+ if block_given?
29
+ scan_enum.each do |item|
30
+ yield item
31
+ end
32
+ else
33
+ scan_enum.each do |item|
34
+ result << item
35
+ end
36
+ end
37
+
38
+ return result unless block_given?
39
+ end
40
+
41
+ private
42
+
43
+ def ole_run_scan(criteria)
44
+ criteria.resolve
45
+ scan_result = self.ole_obj.Scan(criteria.ole_obj) rescue nil
46
+ end
47
+
48
+
49
+ end
50
+
51
+ end
@@ -1,40 +1,40 @@
1
- module Microstation
2
-
3
- module Scan
4
-
5
- module Subtype
6
-
7
- def subtype_inclusions
8
- @subtype_inclusions ||= []
9
- end
10
-
11
- def include_subtype(subtype)
12
- subtype_inclusions << subtype
13
- end
14
-
15
- def reset_subtypes
16
- reset_ole_subtypes
17
- @subtype_inclusions = []
18
- end
19
-
20
- def reset_ole_subtypes
21
- ole_obj.ExcludeAllSubtypes
22
- end
23
-
24
- def resolve_subtype_scans
25
- return unless subtype_inclusions.size > 0
26
- reset_ole_subtypes
27
- subtype_inclusions.each do |subtype|
28
- ole_obj.IncludeSubtype(subtype)
29
- end
30
- end
31
-
32
- end
33
-
34
- end
35
-
36
- end
37
-
38
-
39
-
40
-
1
+ module Microstation
2
+
3
+ module Scan
4
+
5
+ module Subtype
6
+
7
+ def subtype_inclusions
8
+ @subtype_inclusions ||= []
9
+ end
10
+
11
+ def include_subtype(subtype)
12
+ subtype_inclusions << subtype
13
+ end
14
+
15
+ def reset_subtypes
16
+ reset_ole_subtypes
17
+ @subtype_inclusions = []
18
+ end
19
+
20
+ def reset_ole_subtypes
21
+ ole_obj.ExcludeAllSubtypes
22
+ end
23
+
24
+ def resolve_subtype_scans
25
+ return unless subtype_inclusions.size > 0
26
+ reset_ole_subtypes
27
+ subtype_inclusions.each do |subtype|
28
+ ole_obj.IncludeSubtype(subtype)
29
+ end
30
+ end
31
+
32
+ end
33
+
34
+ end
35
+
36
+ end
37
+
38
+
39
+
40
+
@@ -1,109 +1,134 @@
1
- module Microstation
2
-
3
- module Scan
4
-
5
- module Type
6
-
7
- # MsdElementTypeCellLibraryHeader
8
- # MsdElementTypeCellHeader
9
- # MsdElementTypeLine
10
- # MsdElementTypeLineString
11
- # MsdElementTypeGroupData
12
- # MsdElementTypeShape
13
- # MsdElementTypeTextNode
14
- # MsdElementTypeDigSetData
15
- # MsdElementTypeDesignFileHeader
16
- # MsdElementTypeLevelSymbology
17
- # MsdElementTypeCurve
18
- # MsdElementTypeComplexString
19
- # MsdElementTypeConic
20
- # MsdElementTypeComplexShape
21
- # MsdElementTypeEllipse
22
- # MsdElementTypeArc
23
- # MsdElementTypeText
24
- # MsdElementTypeSurface
25
- # MsdElementTypeSolid
26
- # MsdElementTypeBsplinePole
27
- # MsdElementTypePointString
28
- # MsdElementTypeCone
29
- # MsdElementTypeBsplineSurface
30
- # MsdElementTypeBsplineBoundary
31
- # MsdElementTypeBsplineKnot
32
- # MsdElementTypeBsplineCurve
33
- # MsdElementTypeBsplineWeight
34
- # MsdElementTypeDimension
35
- # MsdElementTypeSharedCellDefinition
36
- # MsdElementTypeSharedCell
37
- # MsdElementTypeMultiLine
38
- # MsdElementTypeTag
39
- # MsdElementTypeDgnStoreComponent
40
- # MsdElementTypeDgnStoreHeader
41
- # MsdElementType44
42
- # MsdElementTypeMicroStation
43
- # MsdElementTypeRasterHeader
44
- # MsdElementTypeRasterComponent
45
- # MsdElementTypeRasterReference
46
- # MsdElementTypeRasterReferenceComponent
47
- # MsdElementTypeRasterFrame
48
- # MsdElementTypeTableEntry
49
- # MsdElementTypeTable
50
- # MsdElementTypeViewGroup
51
- # MsdElementTypeView
52
- # MsdElementTypeLevelMask
53
- # MsdElementTypeReferenceAttachment
54
- # MsdElementTypeMatrixHeader
55
- # MsdElementTypeMatrixIntegerData
56
- # MsdElementTypeMatrixDoubleData
57
- # MsdElementTypeMeshHeader
58
- # MsdElementTypeReferenceOverride
59
- # MsdElementTypeNamedGroupHeader
60
- # MsdElementTypeNamedGroupComponent
61
-
62
- def type_inclusions
63
- @type_inclusions ||= []
64
- end
65
-
66
- def reset_types
67
- reset_ole_types
68
- @type_inclusions = []
69
- end
70
-
71
- def reset_ole_types
72
- ole_obj.ExcludeAllTypes
73
- end
74
-
75
- def include_type(type)
76
- type_inclusions << type
77
- end
78
-
79
- def resolve_type_scans
80
- return unless type_inclusions.size > 0
81
- reset_ole_types
82
- type_inclusions.each do |type|
83
- ole_obj.IncludeType(type)
84
- end
85
- end
86
-
87
- def include_text
88
- self.include_type(Microstation::MSD::MsdElementTypeText)
89
- end
90
-
91
- def include_tags
92
- self.include_type Microstation::MSD::MsdElementTypeTag
93
- end
94
-
95
- def include_text_nodes
96
- self.include_type Microstation::MSD::MsdElementTypeTextNode
97
- end
98
-
99
- def include_textual
100
- include_text
101
- include_text_nodes
102
- end
103
-
104
-
105
- end
106
-
107
- end
108
-
109
- end
1
+ module Microstation
2
+
3
+ module Scan
4
+
5
+ module Type
6
+
7
+ # MsdElementTypeCellLibraryHeader
8
+ # MsdElementTypeCellHeader
9
+ # MsdElementTypeLine
10
+ # MsdElementTypeLineString
11
+ # MsdElementTypeGroupData
12
+ # MsdElementTypeShape
13
+ # MsdElementTypeTextNode
14
+ # MsdElementTypeDigSetData
15
+ # MsdElementTypeDesignFileHeader
16
+ # MsdElementTypeLevelSymbology
17
+ # MsdElementTypeCurve
18
+ # MsdElementTypeComplexString
19
+ # MsdElementTypeConic
20
+ # MsdElementTypeComplexShape
21
+ # MsdElementTypeEllipse
22
+ # MsdElementTypeArc
23
+ # MsdElementTypeText
24
+ # MsdElementTypeSurface
25
+ # MsdElementTypeSolid
26
+ # MsdElementTypeBsplinePole
27
+ # MsdElementTypePointString
28
+ # MsdElementTypeCone
29
+ # MsdElementTypeBsplineSurface
30
+ # MsdElementTypeBsplineBoundary
31
+ # MsdElementTypeBsplineKnot
32
+ # MsdElementTypeBsplineCurve
33
+ # MsdElementTypeBsplineWeight
34
+ # MsdElementTypeDimension
35
+ # MsdElementTypeSharedCellDefinition
36
+ # MsdElementTypeSharedCell
37
+ # MsdElementTypeMultiLine
38
+ # MsdElementTypeTag
39
+ # MsdElementTypeDgnStoreComponent
40
+ # MsdElementTypeDgnStoreHeader
41
+ # MsdElementType44
42
+ # MsdElementTypeMicroStation
43
+ # MsdElementTypeRasterHeader
44
+ # MsdElementTypeRasterComponent
45
+ # MsdElementTypeRasterReference
46
+ # MsdElementTypeRasterReferenceComponent
47
+ # MsdElementTypeRasterFrame
48
+ # MsdElementTypeTableEntry
49
+ # MsdElementTypeTable
50
+ # MsdElementTypeViewGroup
51
+ # MsdElementTypeView
52
+ # MsdElementTypeLevelMask
53
+ # MsdElementTypeReferenceAttachment
54
+ # MsdElementTypeMatrixHeader
55
+ # MsdElementTypeMatrixIntegerData
56
+ # MsdElementTypeMatrixDoubleData
57
+ # MsdElementTypeMeshHeader
58
+ # MsdElementTypeReferenceOverride
59
+ # MsdElementTypeNamedGroupHeader
60
+ # MsdElementTypeNamedGroupComponent
61
+
62
+ def type_inclusions
63
+ @type_inclusions ||= []
64
+ end
65
+
66
+ def reset_types
67
+ reset_ole_types
68
+ @type_inclusions = []
69
+ end
70
+
71
+ def reset_ole_types
72
+ ole_obj.ExcludeAllTypes
73
+ end
74
+
75
+ def include_type(type)
76
+ type_inclusions << type
77
+ end
78
+
79
+ def resolve_type_scans
80
+ return unless type_inclusions.size > 0
81
+ reset_ole_types
82
+ type_inclusions.each do |type|
83
+ ole_obj.IncludeType(type)
84
+ end
85
+ end
86
+
87
+ def include_cell_header
88
+ self.include_type(::Microstation::MSD::MsdElementTypeCellHeader)
89
+ end
90
+
91
+ def include_shared_cell
92
+ self.include_type(::Microstation::MSD::MsdElementTypeSharedCell)
93
+ end
94
+
95
+ def include_cells
96
+ include_cell_header
97
+ include_shared_cell
98
+ end
99
+
100
+ def include_dimensions
101
+ self.include_type(::Microstation::MSD::MsdElementTypeDimension)
102
+ end
103
+
104
+ def include_text
105
+ self.include_type(::Microstation::MSD::MsdElementTypeText)
106
+ end
107
+
108
+ def include_tags
109
+ self.include_type ::Microstation::MSD::MsdElementTypeTag
110
+ end
111
+
112
+ def include_text_nodes
113
+ self.include_type ::Microstation::MSD::MsdElementTypeTextNode
114
+ end
115
+
116
+ def include_textual
117
+ include_text
118
+ include_text_nodes
119
+ end
120
+
121
+ def include_solids
122
+ self.include_type ::Microstation::MSD::MsdElementTypeSolid
123
+ end
124
+
125
+ def include_lines
126
+ self.include_type ::Microstation::MSD::MsdElementTypeLine
127
+ end
128
+
129
+
130
+ end
131
+
132
+ end
133
+
134
+ end
@@ -0,0 +1,62 @@
1
+ require_relative 'criteria_creation_t'
2
+ module Microstation
3
+
4
+ module ScanTrait
5
+
6
+ def create_scanner(name,&block)
7
+ app.create_scanner(name, &block)
8
+ end
9
+
10
+ def text_criteria
11
+ app.scanners[:textual] || app.create_scanner(:textual){ include_textual}
12
+ end
13
+
14
+ def graphics_criteria
15
+ app.scanners[:graphical] || app.create_scanner(:graphical){ ExcludeNonGraphical}
16
+ end
17
+
18
+ def tags_criteria
19
+ app.scanners[:tags] || app.create_scanner(:tags){ include_tags}
20
+ end
21
+
22
+ def cells_criteria
23
+ app.scanners[:cells] || app.create_scanner(:cells){ include_cells}
24
+ end
25
+
26
+ def lines_criteria
27
+ app.scanners[:lines] || app.create_scanner(:lines){ include_lines}
28
+ end
29
+
30
+ def scan_graphical(&block)
31
+ self.scan_model(graphic_criteria, &block)
32
+ end
33
+
34
+ def scan_text(&block)
35
+ self.scan_model(text_criteria,&block)
36
+ end
37
+
38
+ def scan_tags(&block)
39
+ self.scan_model(tags_criteria,&block)
40
+ end
41
+
42
+ def scan_cells(&block)
43
+ self.scan_model(cells_criteria,&block)
44
+ end
45
+
46
+ def scan_lines(&block)
47
+ self.scan_model(lines_criteria, &block)
48
+ end
49
+
50
+
51
+ def scan_cell_with_name(name, &block)
52
+ sc = create_scanner
53
+ sc.IncludeOnlyCell(name)
54
+ sc.include_cell
55
+ self.scan_model(sc,&block)
56
+ end
57
+
58
+
59
+
60
+ end
61
+
62
+ end