dimine-python-sdk 0.1.8__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- dimine_python_sdk/__init__.py +13 -0
- dimine_python_sdk/conn/__init__.py +5 -0
- dimine_python_sdk/conn/base_conn_client.py +167 -0
- dimine_python_sdk/conn/conn_client.py +382 -0
- dimine_python_sdk/docs/guides/data_edit.md +306 -0
- dimine_python_sdk/docs/guides/data_get.md +266 -0
- dimine_python_sdk/docs/guides/data_types.md +152 -0
- dimine_python_sdk/docs/guides/features.md +271 -0
- dimine_python_sdk/docs/guides/io.md +157 -0
- dimine_python_sdk/docs/index.md +41 -0
- dimine_python_sdk/docs/quickstart.md +45 -0
- dimine_python_sdk/docs/reference/SUMMARY.md +19 -0
- dimine_python_sdk/docs/reference/conn/base_conn_client.md +3 -0
- dimine_python_sdk/docs/reference/conn/conn_client.md +3 -0
- dimine_python_sdk/docs/reference/lib/algorithm/model_func.md +3 -0
- dimine_python_sdk/docs/reference/lib/io/file_conversion.md +3 -0
- dimine_python_sdk/docs/reference/lib/io/models.md +3 -0
- dimine_python_sdk/docs/reference/lib/io/project_plotting.md +3 -0
- dimine_python_sdk/docs/reference/lib/prospecting/block_data.md +3 -0
- dimine_python_sdk/docs/reference/lib/prospecting/drill_db.md +3 -0
- dimine_python_sdk/docs/reference/lib/prospecting/models.md +3 -0
- dimine_python_sdk/docs/reference/lib/prospecting/valuation.md +3 -0
- dimine_python_sdk/docs/reference/lib/types/entity.md +3 -0
- dimine_python_sdk/docs/reference/lib/types/line.md +3 -0
- dimine_python_sdk/docs/reference/lib/types/point.md +3 -0
- dimine_python_sdk/docs/reference/logger.md +3 -0
- dimine_python_sdk/docs/reference/models/conn.md +3 -0
- dimine_python_sdk/docs/reference/models/errors.md +3 -0
- dimine_python_sdk/docs/reference/models/types.md +3 -0
- dimine_python_sdk/docs/summary.md +6 -0
- dimine_python_sdk/lib/__init__.py +20 -0
- dimine_python_sdk/lib/algorithm/__init__.py +1 -0
- dimine_python_sdk/lib/algorithm/model_func.py +219 -0
- dimine_python_sdk/lib/exploitation/__init__.py +0 -0
- dimine_python_sdk/lib/io/__init__.py +2 -0
- dimine_python_sdk/lib/io/file_conversion.py +143 -0
- dimine_python_sdk/lib/io/models.py +180 -0
- dimine_python_sdk/lib/io/project_plotting.py +40 -0
- dimine_python_sdk/lib/prospecting/__init__.py +3 -0
- dimine_python_sdk/lib/prospecting/block_data.py +289 -0
- dimine_python_sdk/lib/prospecting/drill_db.py +333 -0
- dimine_python_sdk/lib/prospecting/models.py +276 -0
- dimine_python_sdk/lib/prospecting/valuation.py +113 -0
- dimine_python_sdk/lib/types/__init__.py +4 -0
- dimine_python_sdk/lib/types/entity.py +957 -0
- dimine_python_sdk/lib/types/line.py +188 -0
- dimine_python_sdk/lib/types/point.py +695 -0
- dimine_python_sdk/logger.py +7 -0
- dimine_python_sdk/models/__init__.py +3 -0
- dimine_python_sdk/models/conn.py +53 -0
- dimine_python_sdk/models/errors.py +4 -0
- dimine_python_sdk/models/types.py +131 -0
- dimine_python_sdk/site/404.html +671 -0
- dimine_python_sdk/site/assets/_mkdocstrings.css +237 -0
- dimine_python_sdk/site/assets/images/favicon.png +0 -0
- dimine_python_sdk/site/assets/javascripts/bundle.79ae519e.min.js +16 -0
- dimine_python_sdk/site/assets/javascripts/bundle.79ae519e.min.js.map +7 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.ar.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.da.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.de.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.du.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.el.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.es.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.fi.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.fr.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.he.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.hi.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.hu.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.hy.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.it.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.ja.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.jp.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.kn.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.ko.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.multi.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.nl.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.no.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.pt.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.ro.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.ru.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.sa.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.stemmer.support.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.sv.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.ta.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.te.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.th.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.tr.min.js +18 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.vi.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/min/lunr.zh.min.js +1 -0
- dimine_python_sdk/site/assets/javascripts/lunr/tinyseg.js +206 -0
- dimine_python_sdk/site/assets/javascripts/lunr/wordcut.js +6708 -0
- dimine_python_sdk/site/assets/javascripts/workers/search.2c215733.min.js +42 -0
- dimine_python_sdk/site/assets/javascripts/workers/search.2c215733.min.js.map +7 -0
- dimine_python_sdk/site/assets/stylesheets/main.484c7ddc.min.css +1 -0
- dimine_python_sdk/site/assets/stylesheets/main.484c7ddc.min.css.map +1 -0
- dimine_python_sdk/site/assets/stylesheets/palette.ab4e12ef.min.css +1 -0
- dimine_python_sdk/site/assets/stylesheets/palette.ab4e12ef.min.css.map +1 -0
- dimine_python_sdk/site/guides/data_edit.html +1251 -0
- dimine_python_sdk/site/guides/data_get.html +1206 -0
- dimine_python_sdk/site/guides/data_types.html +1529 -0
- dimine_python_sdk/site/guides/features.html +1217 -0
- dimine_python_sdk/site/guides/io.html +1025 -0
- dimine_python_sdk/site/index.html +849 -0
- dimine_python_sdk/site/objects.inv +0 -0
- dimine_python_sdk/site/quickstart.html +859 -0
- dimine_python_sdk/site/reference/SUMMARY.html +729 -0
- dimine_python_sdk/site/reference/conn/base_conn_client.html +1295 -0
- dimine_python_sdk/site/reference/conn/conn_client.html +3551 -0
- dimine_python_sdk/site/reference/lib/algorithm/model_func.html +2162 -0
- dimine_python_sdk/site/reference/lib/io/file_conversion.html +1725 -0
- dimine_python_sdk/site/reference/lib/io/models.html +1625 -0
- dimine_python_sdk/site/reference/lib/io/project_plotting.html +984 -0
- dimine_python_sdk/site/reference/lib/prospecting/block_data.html +2455 -0
- dimine_python_sdk/site/reference/lib/prospecting/drill_db.html +2836 -0
- dimine_python_sdk/site/reference/lib/prospecting/models.html +2309 -0
- dimine_python_sdk/site/reference/lib/prospecting/valuation.html +1373 -0
- dimine_python_sdk/site/reference/lib/types/entity.html +6728 -0
- dimine_python_sdk/site/reference/lib/types/line.html +1985 -0
- dimine_python_sdk/site/reference/lib/types/point.html +3672 -0
- dimine_python_sdk/site/reference/logger.html +751 -0
- dimine_python_sdk/site/reference/models/conn.html +751 -0
- dimine_python_sdk/site/reference/models/errors.html +802 -0
- dimine_python_sdk/site/reference/models/types.html +1679 -0
- dimine_python_sdk/site/search/search_index.json +1 -0
- dimine_python_sdk/site/sitemap.xml +107 -0
- dimine_python_sdk/site/sitemap.xml.gz +0 -0
- dimine_python_sdk/site/summary.html +697 -0
- dimine_python_sdk-0.1.8.dist-info/METADATA +15 -0
- dimine_python_sdk-0.1.8.dist-info/RECORD +135 -0
- dimine_python_sdk-0.1.8.dist-info/WHEEL +5 -0
- dimine_python_sdk-0.1.8.dist-info/top_level.txt +2 -0
- tests/conn_test.py +250 -0
- tests/test_base_type.py +143 -0
- tests/ws_client.py +60 -0
- tests/ws_server.py +271 -0
|
@@ -0,0 +1,2455 @@
|
|
|
1
|
+
|
|
2
|
+
<!doctype html>
|
|
3
|
+
<html lang="en" class="no-js">
|
|
4
|
+
<head>
|
|
5
|
+
|
|
6
|
+
<meta charset="utf-8">
|
|
7
|
+
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
<link rel="canonical" href="https://localhost:8000/docs/reference/lib/prospecting/block_data.html">
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
<link rel="icon" href="../../../assets/images/favicon.png">
|
|
20
|
+
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.7.4">
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
<title>block_data - dimine-python-sdk</title>
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
<link rel="stylesheet" href="../../../assets/stylesheets/main.484c7ddc.min.css">
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
42
|
+
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
|
|
43
|
+
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
<link rel="stylesheet" href="../../../assets/_mkdocstrings.css">
|
|
48
|
+
|
|
49
|
+
<script>__md_scope=new URL("../../..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
</head>
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
<body dir="ltr">
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
|
|
62
|
+
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
|
|
63
|
+
<label class="md-overlay" for="__drawer"></label>
|
|
64
|
+
<div data-md-component="skip">
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
<a href="#block_data" class="md-skip">
|
|
68
|
+
Skip to content
|
|
69
|
+
</a>
|
|
70
|
+
|
|
71
|
+
</div>
|
|
72
|
+
<div data-md-component="announce">
|
|
73
|
+
|
|
74
|
+
</div>
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
<header class="md-header" data-md-component="header">
|
|
80
|
+
<nav class="md-header__inner md-grid" aria-label="Header">
|
|
81
|
+
<a href="../../../index.html" title="dimine-python-sdk" class="md-header__button md-logo" aria-label="dimine-python-sdk" data-md-component="logo">
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54"/></svg>
|
|
85
|
+
|
|
86
|
+
</a>
|
|
87
|
+
<label class="md-header__button md-icon" for="__drawer">
|
|
88
|
+
|
|
89
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
|
|
90
|
+
</label>
|
|
91
|
+
<div class="md-header__title" data-md-component="header-title">
|
|
92
|
+
<div class="md-header__ellipsis">
|
|
93
|
+
<div class="md-header__topic">
|
|
94
|
+
<span class="md-ellipsis">
|
|
95
|
+
dimine-python-sdk
|
|
96
|
+
</span>
|
|
97
|
+
</div>
|
|
98
|
+
<div class="md-header__topic" data-md-component="header-topic">
|
|
99
|
+
<span class="md-ellipsis">
|
|
100
|
+
|
|
101
|
+
block_data
|
|
102
|
+
|
|
103
|
+
</span>
|
|
104
|
+
</div>
|
|
105
|
+
</div>
|
|
106
|
+
</div>
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
<script>var palette=__md_get("__palette");if(palette&&palette.color){if("(prefers-color-scheme)"===palette.color.media){var media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent")}for(var[key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script>
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
<label class="md-header__button md-icon" for="__search">
|
|
116
|
+
|
|
117
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
|
|
118
|
+
</label>
|
|
119
|
+
<div class="md-search" data-md-component="search" role="dialog">
|
|
120
|
+
<label class="md-search__overlay" for="__search"></label>
|
|
121
|
+
<div class="md-search__inner" role="search">
|
|
122
|
+
<form class="md-search__form" name="search">
|
|
123
|
+
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
|
|
124
|
+
<label class="md-search__icon md-icon" for="__search">
|
|
125
|
+
|
|
126
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
|
|
127
|
+
|
|
128
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
|
|
129
|
+
</label>
|
|
130
|
+
<nav class="md-search__options" aria-label="Search">
|
|
131
|
+
|
|
132
|
+
<button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
|
|
133
|
+
|
|
134
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
|
|
135
|
+
</button>
|
|
136
|
+
</nav>
|
|
137
|
+
|
|
138
|
+
</form>
|
|
139
|
+
<div class="md-search__output">
|
|
140
|
+
<div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
|
|
141
|
+
<div class="md-search-result" data-md-component="search-result">
|
|
142
|
+
<div class="md-search-result__meta">
|
|
143
|
+
Initializing search
|
|
144
|
+
</div>
|
|
145
|
+
<ol class="md-search-result__list" role="presentation"></ol>
|
|
146
|
+
</div>
|
|
147
|
+
</div>
|
|
148
|
+
</div>
|
|
149
|
+
</div>
|
|
150
|
+
</div>
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
</nav>
|
|
155
|
+
|
|
156
|
+
</header>
|
|
157
|
+
|
|
158
|
+
<div class="md-container" data-md-component="container">
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
<nav class="md-tabs" aria-label="Tabs" data-md-component="tabs">
|
|
165
|
+
<div class="md-grid">
|
|
166
|
+
<ul class="md-tabs__list">
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
<li class="md-tabs__item">
|
|
174
|
+
<a href="../../../index.html" class="md-tabs__link">
|
|
175
|
+
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
首页
|
|
181
|
+
|
|
182
|
+
</a>
|
|
183
|
+
</li>
|
|
184
|
+
|
|
185
|
+
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
<li class="md-tabs__item">
|
|
193
|
+
<a href="../../../quickstart.html" class="md-tabs__link">
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
快速开始
|
|
200
|
+
|
|
201
|
+
</a>
|
|
202
|
+
</li>
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
<li class="md-tabs__item">
|
|
214
|
+
<a href="../../../guides/data_edit.html" class="md-tabs__link">
|
|
215
|
+
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
操作指南
|
|
219
|
+
|
|
220
|
+
</a>
|
|
221
|
+
</li>
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
<li class="md-tabs__item">
|
|
232
|
+
<a href="../../SUMMARY.html" class="md-tabs__link">
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
|
|
238
|
+
API 参考
|
|
239
|
+
|
|
240
|
+
</a>
|
|
241
|
+
</li>
|
|
242
|
+
|
|
243
|
+
|
|
244
|
+
|
|
245
|
+
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
|
|
249
|
+
|
|
250
|
+
<li class="md-tabs__item">
|
|
251
|
+
<a href="../../../examples" class="md-tabs__link">
|
|
252
|
+
|
|
253
|
+
|
|
254
|
+
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
示例
|
|
258
|
+
|
|
259
|
+
</a>
|
|
260
|
+
</li>
|
|
261
|
+
|
|
262
|
+
|
|
263
|
+
|
|
264
|
+
</ul>
|
|
265
|
+
</div>
|
|
266
|
+
</nav>
|
|
267
|
+
|
|
268
|
+
|
|
269
|
+
|
|
270
|
+
<main class="md-main" data-md-component="main">
|
|
271
|
+
<div class="md-main__inner md-grid">
|
|
272
|
+
|
|
273
|
+
|
|
274
|
+
|
|
275
|
+
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
|
|
276
|
+
<div class="md-sidebar__scrollwrap">
|
|
277
|
+
<div class="md-sidebar__inner">
|
|
278
|
+
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
|
|
284
|
+
<nav class="md-nav md-nav--primary md-nav--lifted" aria-label="Navigation" data-md-level="0">
|
|
285
|
+
<label class="md-nav__title" for="__drawer">
|
|
286
|
+
<a href="../../../index.html" title="dimine-python-sdk" class="md-nav__button md-logo" aria-label="dimine-python-sdk" data-md-component="logo">
|
|
287
|
+
|
|
288
|
+
|
|
289
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54"/></svg>
|
|
290
|
+
|
|
291
|
+
</a>
|
|
292
|
+
dimine-python-sdk
|
|
293
|
+
</label>
|
|
294
|
+
|
|
295
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
296
|
+
|
|
297
|
+
|
|
298
|
+
|
|
299
|
+
|
|
300
|
+
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
<li class="md-nav__item">
|
|
304
|
+
<a href="../../../index.html" class="md-nav__link">
|
|
305
|
+
|
|
306
|
+
|
|
307
|
+
|
|
308
|
+
<span class="md-ellipsis">
|
|
309
|
+
|
|
310
|
+
|
|
311
|
+
首页
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
</span>
|
|
316
|
+
|
|
317
|
+
|
|
318
|
+
|
|
319
|
+
</a>
|
|
320
|
+
</li>
|
|
321
|
+
|
|
322
|
+
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
|
|
326
|
+
|
|
327
|
+
|
|
328
|
+
|
|
329
|
+
|
|
330
|
+
<li class="md-nav__item">
|
|
331
|
+
<a href="../../../quickstart.html" class="md-nav__link">
|
|
332
|
+
|
|
333
|
+
|
|
334
|
+
|
|
335
|
+
<span class="md-ellipsis">
|
|
336
|
+
|
|
337
|
+
|
|
338
|
+
快速开始
|
|
339
|
+
|
|
340
|
+
|
|
341
|
+
|
|
342
|
+
</span>
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+
</a>
|
|
347
|
+
</li>
|
|
348
|
+
|
|
349
|
+
|
|
350
|
+
|
|
351
|
+
|
|
352
|
+
|
|
353
|
+
|
|
354
|
+
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
|
|
363
|
+
|
|
364
|
+
|
|
365
|
+
|
|
366
|
+
|
|
367
|
+
<li class="md-nav__item md-nav__item--nested">
|
|
368
|
+
|
|
369
|
+
|
|
370
|
+
|
|
371
|
+
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
|
|
372
|
+
|
|
373
|
+
|
|
374
|
+
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
|
|
375
|
+
|
|
376
|
+
|
|
377
|
+
|
|
378
|
+
<span class="md-ellipsis">
|
|
379
|
+
|
|
380
|
+
|
|
381
|
+
操作指南
|
|
382
|
+
|
|
383
|
+
|
|
384
|
+
|
|
385
|
+
</span>
|
|
386
|
+
|
|
387
|
+
|
|
388
|
+
|
|
389
|
+
<span class="md-nav__icon md-icon"></span>
|
|
390
|
+
</label>
|
|
391
|
+
|
|
392
|
+
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
|
|
393
|
+
<label class="md-nav__title" for="__nav_3">
|
|
394
|
+
<span class="md-nav__icon md-icon"></span>
|
|
395
|
+
|
|
396
|
+
|
|
397
|
+
操作指南
|
|
398
|
+
|
|
399
|
+
|
|
400
|
+
</label>
|
|
401
|
+
<ul class="md-nav__list" data-md-scrollfix>
|
|
402
|
+
|
|
403
|
+
|
|
404
|
+
|
|
405
|
+
|
|
406
|
+
|
|
407
|
+
|
|
408
|
+
|
|
409
|
+
<li class="md-nav__item">
|
|
410
|
+
<a href="../../../guides/data_edit.html" class="md-nav__link">
|
|
411
|
+
|
|
412
|
+
|
|
413
|
+
|
|
414
|
+
<span class="md-ellipsis">
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
数据修改
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
|
|
421
|
+
</span>
|
|
422
|
+
|
|
423
|
+
|
|
424
|
+
|
|
425
|
+
</a>
|
|
426
|
+
</li>
|
|
427
|
+
|
|
428
|
+
|
|
429
|
+
|
|
430
|
+
|
|
431
|
+
|
|
432
|
+
|
|
433
|
+
|
|
434
|
+
|
|
435
|
+
|
|
436
|
+
|
|
437
|
+
<li class="md-nav__item">
|
|
438
|
+
<a href="../../../guides/data_get.html" class="md-nav__link">
|
|
439
|
+
|
|
440
|
+
|
|
441
|
+
|
|
442
|
+
<span class="md-ellipsis">
|
|
443
|
+
|
|
444
|
+
|
|
445
|
+
数据获取
|
|
446
|
+
|
|
447
|
+
|
|
448
|
+
|
|
449
|
+
</span>
|
|
450
|
+
|
|
451
|
+
|
|
452
|
+
|
|
453
|
+
</a>
|
|
454
|
+
</li>
|
|
455
|
+
|
|
456
|
+
|
|
457
|
+
|
|
458
|
+
|
|
459
|
+
|
|
460
|
+
|
|
461
|
+
|
|
462
|
+
|
|
463
|
+
|
|
464
|
+
|
|
465
|
+
<li class="md-nav__item">
|
|
466
|
+
<a href="../../../guides/data_types.html" class="md-nav__link">
|
|
467
|
+
|
|
468
|
+
|
|
469
|
+
|
|
470
|
+
<span class="md-ellipsis">
|
|
471
|
+
|
|
472
|
+
|
|
473
|
+
数据类型说明
|
|
474
|
+
|
|
475
|
+
|
|
476
|
+
|
|
477
|
+
</span>
|
|
478
|
+
|
|
479
|
+
|
|
480
|
+
|
|
481
|
+
</a>
|
|
482
|
+
</li>
|
|
483
|
+
|
|
484
|
+
|
|
485
|
+
|
|
486
|
+
|
|
487
|
+
|
|
488
|
+
|
|
489
|
+
|
|
490
|
+
|
|
491
|
+
|
|
492
|
+
|
|
493
|
+
<li class="md-nav__item">
|
|
494
|
+
<a href="../../../guides/features.html" class="md-nav__link">
|
|
495
|
+
|
|
496
|
+
|
|
497
|
+
|
|
498
|
+
<span class="md-ellipsis">
|
|
499
|
+
|
|
500
|
+
|
|
501
|
+
要素管理
|
|
502
|
+
|
|
503
|
+
|
|
504
|
+
|
|
505
|
+
</span>
|
|
506
|
+
|
|
507
|
+
|
|
508
|
+
|
|
509
|
+
</a>
|
|
510
|
+
</li>
|
|
511
|
+
|
|
512
|
+
|
|
513
|
+
|
|
514
|
+
|
|
515
|
+
|
|
516
|
+
|
|
517
|
+
|
|
518
|
+
|
|
519
|
+
|
|
520
|
+
|
|
521
|
+
<li class="md-nav__item">
|
|
522
|
+
<a href="../../../guides/io.html" class="md-nav__link">
|
|
523
|
+
|
|
524
|
+
|
|
525
|
+
|
|
526
|
+
<span class="md-ellipsis">
|
|
527
|
+
|
|
528
|
+
|
|
529
|
+
IO操作
|
|
530
|
+
|
|
531
|
+
|
|
532
|
+
|
|
533
|
+
</span>
|
|
534
|
+
|
|
535
|
+
|
|
536
|
+
|
|
537
|
+
</a>
|
|
538
|
+
</li>
|
|
539
|
+
|
|
540
|
+
|
|
541
|
+
|
|
542
|
+
|
|
543
|
+
</ul>
|
|
544
|
+
</nav>
|
|
545
|
+
|
|
546
|
+
</li>
|
|
547
|
+
|
|
548
|
+
|
|
549
|
+
|
|
550
|
+
|
|
551
|
+
|
|
552
|
+
|
|
553
|
+
|
|
554
|
+
|
|
555
|
+
|
|
556
|
+
<li class="md-nav__item">
|
|
557
|
+
<a href="../../SUMMARY.html" class="md-nav__link">
|
|
558
|
+
|
|
559
|
+
|
|
560
|
+
|
|
561
|
+
<span class="md-ellipsis">
|
|
562
|
+
|
|
563
|
+
|
|
564
|
+
API 参考
|
|
565
|
+
|
|
566
|
+
|
|
567
|
+
|
|
568
|
+
</span>
|
|
569
|
+
|
|
570
|
+
|
|
571
|
+
|
|
572
|
+
</a>
|
|
573
|
+
</li>
|
|
574
|
+
|
|
575
|
+
|
|
576
|
+
|
|
577
|
+
|
|
578
|
+
|
|
579
|
+
|
|
580
|
+
|
|
581
|
+
|
|
582
|
+
|
|
583
|
+
<li class="md-nav__item">
|
|
584
|
+
<a href="../../../examples" class="md-nav__link">
|
|
585
|
+
|
|
586
|
+
|
|
587
|
+
|
|
588
|
+
<span class="md-ellipsis">
|
|
589
|
+
|
|
590
|
+
|
|
591
|
+
示例
|
|
592
|
+
|
|
593
|
+
|
|
594
|
+
|
|
595
|
+
</span>
|
|
596
|
+
|
|
597
|
+
|
|
598
|
+
|
|
599
|
+
</a>
|
|
600
|
+
</li>
|
|
601
|
+
|
|
602
|
+
|
|
603
|
+
|
|
604
|
+
</ul>
|
|
605
|
+
</nav>
|
|
606
|
+
</div>
|
|
607
|
+
</div>
|
|
608
|
+
</div>
|
|
609
|
+
|
|
610
|
+
|
|
611
|
+
|
|
612
|
+
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
|
|
613
|
+
<div class="md-sidebar__scrollwrap">
|
|
614
|
+
<div class="md-sidebar__inner">
|
|
615
|
+
|
|
616
|
+
|
|
617
|
+
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
|
|
618
|
+
|
|
619
|
+
|
|
620
|
+
|
|
621
|
+
|
|
622
|
+
|
|
623
|
+
|
|
624
|
+
<label class="md-nav__title" for="__toc">
|
|
625
|
+
<span class="md-nav__icon md-icon"></span>
|
|
626
|
+
Table of contents
|
|
627
|
+
</label>
|
|
628
|
+
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
|
629
|
+
|
|
630
|
+
<li class="md-nav__item">
|
|
631
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data" class="md-nav__link">
|
|
632
|
+
<span class="md-ellipsis">
|
|
633
|
+
|
|
634
|
+
block_data
|
|
635
|
+
|
|
636
|
+
</span>
|
|
637
|
+
</a>
|
|
638
|
+
|
|
639
|
+
</li>
|
|
640
|
+
|
|
641
|
+
<li class="md-nav__item">
|
|
642
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData" class="md-nav__link">
|
|
643
|
+
<span class="md-ellipsis">
|
|
644
|
+
|
|
645
|
+
DmBlockData
|
|
646
|
+
|
|
647
|
+
</span>
|
|
648
|
+
</a>
|
|
649
|
+
|
|
650
|
+
<nav class="md-nav" aria-label="DmBlockData">
|
|
651
|
+
<ul class="md-nav__list">
|
|
652
|
+
|
|
653
|
+
<li class="md-nav__item">
|
|
654
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.advance_cursor" class="md-nav__link">
|
|
655
|
+
<span class="md-ellipsis">
|
|
656
|
+
|
|
657
|
+
advance_cursor
|
|
658
|
+
|
|
659
|
+
</span>
|
|
660
|
+
</a>
|
|
661
|
+
|
|
662
|
+
</li>
|
|
663
|
+
|
|
664
|
+
<li class="md-nav__item">
|
|
665
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.block_constrain_to_dmc_file" class="md-nav__link">
|
|
666
|
+
<span class="md-ellipsis">
|
|
667
|
+
|
|
668
|
+
block_constrain_to_dmc_file
|
|
669
|
+
|
|
670
|
+
</span>
|
|
671
|
+
</a>
|
|
672
|
+
|
|
673
|
+
</li>
|
|
674
|
+
|
|
675
|
+
<li class="md-nav__item">
|
|
676
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.create_block_model" class="md-nav__link">
|
|
677
|
+
<span class="md-ellipsis">
|
|
678
|
+
|
|
679
|
+
create_block_model
|
|
680
|
+
|
|
681
|
+
</span>
|
|
682
|
+
</a>
|
|
683
|
+
|
|
684
|
+
</li>
|
|
685
|
+
|
|
686
|
+
<li class="md-nav__item">
|
|
687
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_cursor_data" class="md-nav__link">
|
|
688
|
+
<span class="md-ellipsis">
|
|
689
|
+
|
|
690
|
+
get_cursor_data
|
|
691
|
+
|
|
692
|
+
</span>
|
|
693
|
+
</a>
|
|
694
|
+
|
|
695
|
+
</li>
|
|
696
|
+
|
|
697
|
+
<li class="md-nav__item">
|
|
698
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_field_definitions" class="md-nav__link">
|
|
699
|
+
<span class="md-ellipsis">
|
|
700
|
+
|
|
701
|
+
get_field_definitions
|
|
702
|
+
|
|
703
|
+
</span>
|
|
704
|
+
</a>
|
|
705
|
+
|
|
706
|
+
</li>
|
|
707
|
+
|
|
708
|
+
<li class="md-nav__item">
|
|
709
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_max_level" class="md-nav__link">
|
|
710
|
+
<span class="md-ellipsis">
|
|
711
|
+
|
|
712
|
+
get_max_level
|
|
713
|
+
|
|
714
|
+
</span>
|
|
715
|
+
</a>
|
|
716
|
+
|
|
717
|
+
</li>
|
|
718
|
+
|
|
719
|
+
<li class="md-nav__item">
|
|
720
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_min_size" class="md-nav__link">
|
|
721
|
+
<span class="md-ellipsis">
|
|
722
|
+
|
|
723
|
+
get_min_size
|
|
724
|
+
|
|
725
|
+
</span>
|
|
726
|
+
</a>
|
|
727
|
+
|
|
728
|
+
</li>
|
|
729
|
+
|
|
730
|
+
<li class="md-nav__item">
|
|
731
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_origin" class="md-nav__link">
|
|
732
|
+
<span class="md-ellipsis">
|
|
733
|
+
|
|
734
|
+
get_origin
|
|
735
|
+
|
|
736
|
+
</span>
|
|
737
|
+
</a>
|
|
738
|
+
|
|
739
|
+
</li>
|
|
740
|
+
|
|
741
|
+
<li class="md-nav__item">
|
|
742
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_rotation" class="md-nav__link">
|
|
743
|
+
<span class="md-ellipsis">
|
|
744
|
+
|
|
745
|
+
get_rotation
|
|
746
|
+
|
|
747
|
+
</span>
|
|
748
|
+
</a>
|
|
749
|
+
|
|
750
|
+
</li>
|
|
751
|
+
|
|
752
|
+
<li class="md-nav__item">
|
|
753
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_total_block_count" class="md-nav__link">
|
|
754
|
+
<span class="md-ellipsis">
|
|
755
|
+
|
|
756
|
+
get_total_block_count
|
|
757
|
+
|
|
758
|
+
</span>
|
|
759
|
+
</a>
|
|
760
|
+
|
|
761
|
+
</li>
|
|
762
|
+
|
|
763
|
+
<li class="md-nav__item">
|
|
764
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_xyz_length" class="md-nav__link">
|
|
765
|
+
<span class="md-ellipsis">
|
|
766
|
+
|
|
767
|
+
get_xyz_length
|
|
768
|
+
|
|
769
|
+
</span>
|
|
770
|
+
</a>
|
|
771
|
+
|
|
772
|
+
</li>
|
|
773
|
+
|
|
774
|
+
<li class="md-nav__item">
|
|
775
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.init_cursor" class="md-nav__link">
|
|
776
|
+
<span class="md-ellipsis">
|
|
777
|
+
|
|
778
|
+
init_cursor
|
|
779
|
+
|
|
780
|
+
</span>
|
|
781
|
+
</a>
|
|
782
|
+
|
|
783
|
+
</li>
|
|
784
|
+
|
|
785
|
+
<li class="md-nav__item">
|
|
786
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.is_beyond_boundary" class="md-nav__link">
|
|
787
|
+
<span class="md-ellipsis">
|
|
788
|
+
|
|
789
|
+
is_beyond_boundary
|
|
790
|
+
|
|
791
|
+
</span>
|
|
792
|
+
</a>
|
|
793
|
+
|
|
794
|
+
</li>
|
|
795
|
+
|
|
796
|
+
<li class="md-nav__item">
|
|
797
|
+
<a href="#dimine_python_sdk.lib.prospecting.block_data.DmBlockData.open" class="md-nav__link">
|
|
798
|
+
<span class="md-ellipsis">
|
|
799
|
+
|
|
800
|
+
open
|
|
801
|
+
|
|
802
|
+
</span>
|
|
803
|
+
</a>
|
|
804
|
+
|
|
805
|
+
</li>
|
|
806
|
+
|
|
807
|
+
</ul>
|
|
808
|
+
</nav>
|
|
809
|
+
|
|
810
|
+
</li>
|
|
811
|
+
|
|
812
|
+
</ul>
|
|
813
|
+
|
|
814
|
+
</nav>
|
|
815
|
+
</div>
|
|
816
|
+
</div>
|
|
817
|
+
</div>
|
|
818
|
+
|
|
819
|
+
|
|
820
|
+
|
|
821
|
+
<div class="md-content" data-md-component="content">
|
|
822
|
+
|
|
823
|
+
<article class="md-content__inner md-typeset">
|
|
824
|
+
|
|
825
|
+
|
|
826
|
+
|
|
827
|
+
|
|
828
|
+
|
|
829
|
+
<h1 id="block_data">block_data</h1>
|
|
830
|
+
|
|
831
|
+
|
|
832
|
+
<div class="doc doc-object doc-module">
|
|
833
|
+
|
|
834
|
+
|
|
835
|
+
|
|
836
|
+
<a id="dimine_python_sdk.lib.prospecting.block_data"></a>
|
|
837
|
+
<div class="doc doc-contents first">
|
|
838
|
+
|
|
839
|
+
|
|
840
|
+
|
|
841
|
+
|
|
842
|
+
|
|
843
|
+
|
|
844
|
+
|
|
845
|
+
|
|
846
|
+
|
|
847
|
+
|
|
848
|
+
<div class="doc doc-children">
|
|
849
|
+
|
|
850
|
+
|
|
851
|
+
|
|
852
|
+
|
|
853
|
+
|
|
854
|
+
|
|
855
|
+
|
|
856
|
+
|
|
857
|
+
|
|
858
|
+
<div class="doc doc-object doc-class">
|
|
859
|
+
|
|
860
|
+
|
|
861
|
+
|
|
862
|
+
<h3 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData" class="doc doc-heading">
|
|
863
|
+
<code>DmBlockData</code>
|
|
864
|
+
|
|
865
|
+
|
|
866
|
+
</h3>
|
|
867
|
+
|
|
868
|
+
|
|
869
|
+
<div class="doc doc-contents ">
|
|
870
|
+
|
|
871
|
+
|
|
872
|
+
|
|
873
|
+
<p>二次封装 dmBlockDataNew 类,提供 Python 化的块段模型操作接口
|
|
874
|
+
职责:加载块段模型文件、获取模型属性、遍历块段数据</p>
|
|
875
|
+
|
|
876
|
+
|
|
877
|
+
|
|
878
|
+
|
|
879
|
+
|
|
880
|
+
|
|
881
|
+
|
|
882
|
+
|
|
883
|
+
<details class="mkdocstrings-source">
|
|
884
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
885
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 8</span>
|
|
886
|
+
<span class="normal"> 9</span>
|
|
887
|
+
<span class="normal"> 10</span>
|
|
888
|
+
<span class="normal"> 11</span>
|
|
889
|
+
<span class="normal"> 12</span>
|
|
890
|
+
<span class="normal"> 13</span>
|
|
891
|
+
<span class="normal"> 14</span>
|
|
892
|
+
<span class="normal"> 15</span>
|
|
893
|
+
<span class="normal"> 16</span>
|
|
894
|
+
<span class="normal"> 17</span>
|
|
895
|
+
<span class="normal"> 18</span>
|
|
896
|
+
<span class="normal"> 19</span>
|
|
897
|
+
<span class="normal"> 20</span>
|
|
898
|
+
<span class="normal"> 21</span>
|
|
899
|
+
<span class="normal"> 22</span>
|
|
900
|
+
<span class="normal"> 23</span>
|
|
901
|
+
<span class="normal"> 24</span>
|
|
902
|
+
<span class="normal"> 25</span>
|
|
903
|
+
<span class="normal"> 26</span>
|
|
904
|
+
<span class="normal"> 27</span>
|
|
905
|
+
<span class="normal"> 28</span>
|
|
906
|
+
<span class="normal"> 29</span>
|
|
907
|
+
<span class="normal"> 30</span>
|
|
908
|
+
<span class="normal"> 31</span>
|
|
909
|
+
<span class="normal"> 32</span>
|
|
910
|
+
<span class="normal"> 33</span>
|
|
911
|
+
<span class="normal"> 34</span>
|
|
912
|
+
<span class="normal"> 35</span>
|
|
913
|
+
<span class="normal"> 36</span>
|
|
914
|
+
<span class="normal"> 37</span>
|
|
915
|
+
<span class="normal"> 38</span>
|
|
916
|
+
<span class="normal"> 39</span>
|
|
917
|
+
<span class="normal"> 40</span>
|
|
918
|
+
<span class="normal"> 41</span>
|
|
919
|
+
<span class="normal"> 42</span>
|
|
920
|
+
<span class="normal"> 43</span>
|
|
921
|
+
<span class="normal"> 44</span>
|
|
922
|
+
<span class="normal"> 45</span>
|
|
923
|
+
<span class="normal"> 46</span>
|
|
924
|
+
<span class="normal"> 47</span>
|
|
925
|
+
<span class="normal"> 48</span>
|
|
926
|
+
<span class="normal"> 49</span>
|
|
927
|
+
<span class="normal"> 50</span>
|
|
928
|
+
<span class="normal"> 51</span>
|
|
929
|
+
<span class="normal"> 52</span>
|
|
930
|
+
<span class="normal"> 53</span>
|
|
931
|
+
<span class="normal"> 54</span>
|
|
932
|
+
<span class="normal"> 55</span>
|
|
933
|
+
<span class="normal"> 56</span>
|
|
934
|
+
<span class="normal"> 57</span>
|
|
935
|
+
<span class="normal"> 58</span>
|
|
936
|
+
<span class="normal"> 59</span>
|
|
937
|
+
<span class="normal"> 60</span>
|
|
938
|
+
<span class="normal"> 61</span>
|
|
939
|
+
<span class="normal"> 62</span>
|
|
940
|
+
<span class="normal"> 63</span>
|
|
941
|
+
<span class="normal"> 64</span>
|
|
942
|
+
<span class="normal"> 65</span>
|
|
943
|
+
<span class="normal"> 66</span>
|
|
944
|
+
<span class="normal"> 67</span>
|
|
945
|
+
<span class="normal"> 68</span>
|
|
946
|
+
<span class="normal"> 69</span>
|
|
947
|
+
<span class="normal"> 70</span>
|
|
948
|
+
<span class="normal"> 71</span>
|
|
949
|
+
<span class="normal"> 72</span>
|
|
950
|
+
<span class="normal"> 73</span>
|
|
951
|
+
<span class="normal"> 74</span>
|
|
952
|
+
<span class="normal"> 75</span>
|
|
953
|
+
<span class="normal"> 76</span>
|
|
954
|
+
<span class="normal"> 77</span>
|
|
955
|
+
<span class="normal"> 78</span>
|
|
956
|
+
<span class="normal"> 79</span>
|
|
957
|
+
<span class="normal"> 80</span>
|
|
958
|
+
<span class="normal"> 81</span>
|
|
959
|
+
<span class="normal"> 82</span>
|
|
960
|
+
<span class="normal"> 83</span>
|
|
961
|
+
<span class="normal"> 84</span>
|
|
962
|
+
<span class="normal"> 85</span>
|
|
963
|
+
<span class="normal"> 86</span>
|
|
964
|
+
<span class="normal"> 87</span>
|
|
965
|
+
<span class="normal"> 88</span>
|
|
966
|
+
<span class="normal"> 89</span>
|
|
967
|
+
<span class="normal"> 90</span>
|
|
968
|
+
<span class="normal"> 91</span>
|
|
969
|
+
<span class="normal"> 92</span>
|
|
970
|
+
<span class="normal"> 93</span>
|
|
971
|
+
<span class="normal"> 94</span>
|
|
972
|
+
<span class="normal"> 95</span>
|
|
973
|
+
<span class="normal"> 96</span>
|
|
974
|
+
<span class="normal"> 97</span>
|
|
975
|
+
<span class="normal"> 98</span>
|
|
976
|
+
<span class="normal"> 99</span>
|
|
977
|
+
<span class="normal">100</span>
|
|
978
|
+
<span class="normal">101</span>
|
|
979
|
+
<span class="normal">102</span>
|
|
980
|
+
<span class="normal">103</span>
|
|
981
|
+
<span class="normal">104</span>
|
|
982
|
+
<span class="normal">105</span>
|
|
983
|
+
<span class="normal">106</span>
|
|
984
|
+
<span class="normal">107</span>
|
|
985
|
+
<span class="normal">108</span>
|
|
986
|
+
<span class="normal">109</span>
|
|
987
|
+
<span class="normal">110</span>
|
|
988
|
+
<span class="normal">111</span>
|
|
989
|
+
<span class="normal">112</span>
|
|
990
|
+
<span class="normal">113</span>
|
|
991
|
+
<span class="normal">114</span>
|
|
992
|
+
<span class="normal">115</span>
|
|
993
|
+
<span class="normal">116</span>
|
|
994
|
+
<span class="normal">117</span>
|
|
995
|
+
<span class="normal">118</span>
|
|
996
|
+
<span class="normal">119</span>
|
|
997
|
+
<span class="normal">120</span>
|
|
998
|
+
<span class="normal">121</span>
|
|
999
|
+
<span class="normal">122</span>
|
|
1000
|
+
<span class="normal">123</span>
|
|
1001
|
+
<span class="normal">124</span>
|
|
1002
|
+
<span class="normal">125</span>
|
|
1003
|
+
<span class="normal">126</span>
|
|
1004
|
+
<span class="normal">127</span>
|
|
1005
|
+
<span class="normal">128</span>
|
|
1006
|
+
<span class="normal">129</span>
|
|
1007
|
+
<span class="normal">130</span>
|
|
1008
|
+
<span class="normal">131</span>
|
|
1009
|
+
<span class="normal">132</span>
|
|
1010
|
+
<span class="normal">133</span>
|
|
1011
|
+
<span class="normal">134</span>
|
|
1012
|
+
<span class="normal">135</span>
|
|
1013
|
+
<span class="normal">136</span>
|
|
1014
|
+
<span class="normal">137</span>
|
|
1015
|
+
<span class="normal">138</span>
|
|
1016
|
+
<span class="normal">139</span>
|
|
1017
|
+
<span class="normal">140</span>
|
|
1018
|
+
<span class="normal">141</span>
|
|
1019
|
+
<span class="normal">142</span>
|
|
1020
|
+
<span class="normal">143</span>
|
|
1021
|
+
<span class="normal">144</span>
|
|
1022
|
+
<span class="normal">145</span>
|
|
1023
|
+
<span class="normal">146</span>
|
|
1024
|
+
<span class="normal">147</span>
|
|
1025
|
+
<span class="normal">148</span>
|
|
1026
|
+
<span class="normal">149</span>
|
|
1027
|
+
<span class="normal">150</span>
|
|
1028
|
+
<span class="normal">151</span>
|
|
1029
|
+
<span class="normal">152</span>
|
|
1030
|
+
<span class="normal">153</span>
|
|
1031
|
+
<span class="normal">154</span>
|
|
1032
|
+
<span class="normal">155</span>
|
|
1033
|
+
<span class="normal">156</span>
|
|
1034
|
+
<span class="normal">157</span>
|
|
1035
|
+
<span class="normal">158</span>
|
|
1036
|
+
<span class="normal">159</span>
|
|
1037
|
+
<span class="normal">160</span>
|
|
1038
|
+
<span class="normal">161</span>
|
|
1039
|
+
<span class="normal">162</span>
|
|
1040
|
+
<span class="normal">163</span>
|
|
1041
|
+
<span class="normal">164</span>
|
|
1042
|
+
<span class="normal">165</span>
|
|
1043
|
+
<span class="normal">166</span>
|
|
1044
|
+
<span class="normal">167</span>
|
|
1045
|
+
<span class="normal">168</span>
|
|
1046
|
+
<span class="normal">169</span>
|
|
1047
|
+
<span class="normal">170</span>
|
|
1048
|
+
<span class="normal">171</span>
|
|
1049
|
+
<span class="normal">172</span>
|
|
1050
|
+
<span class="normal">173</span>
|
|
1051
|
+
<span class="normal">174</span>
|
|
1052
|
+
<span class="normal">175</span>
|
|
1053
|
+
<span class="normal">176</span>
|
|
1054
|
+
<span class="normal">177</span>
|
|
1055
|
+
<span class="normal">178</span>
|
|
1056
|
+
<span class="normal">179</span>
|
|
1057
|
+
<span class="normal">180</span>
|
|
1058
|
+
<span class="normal">181</span>
|
|
1059
|
+
<span class="normal">182</span>
|
|
1060
|
+
<span class="normal">183</span>
|
|
1061
|
+
<span class="normal">184</span>
|
|
1062
|
+
<span class="normal">185</span>
|
|
1063
|
+
<span class="normal">186</span>
|
|
1064
|
+
<span class="normal">187</span>
|
|
1065
|
+
<span class="normal">188</span>
|
|
1066
|
+
<span class="normal">189</span>
|
|
1067
|
+
<span class="normal">190</span>
|
|
1068
|
+
<span class="normal">191</span>
|
|
1069
|
+
<span class="normal">192</span>
|
|
1070
|
+
<span class="normal">193</span>
|
|
1071
|
+
<span class="normal">194</span>
|
|
1072
|
+
<span class="normal">195</span>
|
|
1073
|
+
<span class="normal">196</span>
|
|
1074
|
+
<span class="normal">197</span>
|
|
1075
|
+
<span class="normal">198</span>
|
|
1076
|
+
<span class="normal">199</span>
|
|
1077
|
+
<span class="normal">200</span>
|
|
1078
|
+
<span class="normal">201</span>
|
|
1079
|
+
<span class="normal">202</span>
|
|
1080
|
+
<span class="normal">203</span>
|
|
1081
|
+
<span class="normal">204</span>
|
|
1082
|
+
<span class="normal">205</span>
|
|
1083
|
+
<span class="normal">206</span>
|
|
1084
|
+
<span class="normal">207</span>
|
|
1085
|
+
<span class="normal">208</span>
|
|
1086
|
+
<span class="normal">209</span>
|
|
1087
|
+
<span class="normal">210</span>
|
|
1088
|
+
<span class="normal">211</span>
|
|
1089
|
+
<span class="normal">212</span>
|
|
1090
|
+
<span class="normal">213</span>
|
|
1091
|
+
<span class="normal">214</span>
|
|
1092
|
+
<span class="normal">215</span>
|
|
1093
|
+
<span class="normal">216</span>
|
|
1094
|
+
<span class="normal">217</span>
|
|
1095
|
+
<span class="normal">218</span>
|
|
1096
|
+
<span class="normal">219</span>
|
|
1097
|
+
<span class="normal">220</span>
|
|
1098
|
+
<span class="normal">221</span>
|
|
1099
|
+
<span class="normal">222</span>
|
|
1100
|
+
<span class="normal">223</span>
|
|
1101
|
+
<span class="normal">224</span>
|
|
1102
|
+
<span class="normal">225</span>
|
|
1103
|
+
<span class="normal">226</span>
|
|
1104
|
+
<span class="normal">227</span>
|
|
1105
|
+
<span class="normal">228</span>
|
|
1106
|
+
<span class="normal">229</span>
|
|
1107
|
+
<span class="normal">230</span>
|
|
1108
|
+
<span class="normal">231</span>
|
|
1109
|
+
<span class="normal">232</span>
|
|
1110
|
+
<span class="normal">233</span>
|
|
1111
|
+
<span class="normal">234</span>
|
|
1112
|
+
<span class="normal">235</span>
|
|
1113
|
+
<span class="normal">236</span>
|
|
1114
|
+
<span class="normal">237</span>
|
|
1115
|
+
<span class="normal">238</span>
|
|
1116
|
+
<span class="normal">239</span>
|
|
1117
|
+
<span class="normal">240</span>
|
|
1118
|
+
<span class="normal">241</span>
|
|
1119
|
+
<span class="normal">242</span>
|
|
1120
|
+
<span class="normal">243</span>
|
|
1121
|
+
<span class="normal">244</span>
|
|
1122
|
+
<span class="normal">245</span>
|
|
1123
|
+
<span class="normal">246</span>
|
|
1124
|
+
<span class="normal">247</span>
|
|
1125
|
+
<span class="normal">248</span>
|
|
1126
|
+
<span class="normal">249</span>
|
|
1127
|
+
<span class="normal">250</span>
|
|
1128
|
+
<span class="normal">251</span>
|
|
1129
|
+
<span class="normal">252</span>
|
|
1130
|
+
<span class="normal">253</span>
|
|
1131
|
+
<span class="normal">254</span>
|
|
1132
|
+
<span class="normal">255</span>
|
|
1133
|
+
<span class="normal">256</span>
|
|
1134
|
+
<span class="normal">257</span>
|
|
1135
|
+
<span class="normal">258</span>
|
|
1136
|
+
<span class="normal">259</span>
|
|
1137
|
+
<span class="normal">260</span>
|
|
1138
|
+
<span class="normal">261</span>
|
|
1139
|
+
<span class="normal">262</span>
|
|
1140
|
+
<span class="normal">263</span>
|
|
1141
|
+
<span class="normal">264</span>
|
|
1142
|
+
<span class="normal">265</span>
|
|
1143
|
+
<span class="normal">266</span>
|
|
1144
|
+
<span class="normal">267</span>
|
|
1145
|
+
<span class="normal">268</span>
|
|
1146
|
+
<span class="normal">269</span>
|
|
1147
|
+
<span class="normal">270</span>
|
|
1148
|
+
<span class="normal">271</span>
|
|
1149
|
+
<span class="normal">272</span>
|
|
1150
|
+
<span class="normal">273</span>
|
|
1151
|
+
<span class="normal">274</span>
|
|
1152
|
+
<span class="normal">275</span>
|
|
1153
|
+
<span class="normal">276</span>
|
|
1154
|
+
<span class="normal">277</span>
|
|
1155
|
+
<span class="normal">278</span>
|
|
1156
|
+
<span class="normal">279</span>
|
|
1157
|
+
<span class="normal">280</span>
|
|
1158
|
+
<span class="normal">281</span>
|
|
1159
|
+
<span class="normal">282</span>
|
|
1160
|
+
<span class="normal">283</span>
|
|
1161
|
+
<span class="normal">284</span>
|
|
1162
|
+
<span class="normal">285</span>
|
|
1163
|
+
<span class="normal">286</span>
|
|
1164
|
+
<span class="normal">287</span>
|
|
1165
|
+
<span class="normal">288</span>
|
|
1166
|
+
<span class="normal">289</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">class</span><span class="w"> </span><span class="nc">DmBlockData</span><span class="p">:</span>
|
|
1167
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1168
|
+
<span class="sd"> 二次封装 dmBlockDataNew 类,提供 Python 化的块段模型操作接口</span>
|
|
1169
|
+
<span class="sd"> 职责:加载块段模型文件、获取模型属性、遍历块段数据</span>
|
|
1170
|
+
<span class="sd"> """</span>
|
|
1171
|
+
<span class="k">def</span><span class="w"> </span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
|
|
1172
|
+
<span class="c1"># 初始化底层块段模型对象</span>
|
|
1173
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span> <span class="o">=</span> <span class="n">Dm</span><span class="o">.</span><span class="n">dmBlockDataNew</span><span class="p">()</span>
|
|
1174
|
+
<span class="c1"># 标记模型是否已成功加载</span>
|
|
1175
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_is_open</span> <span class="o">=</span> <span class="kc">False</span>
|
|
1176
|
+
|
|
1177
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">open</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">file_path</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
|
1178
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1179
|
+
<span class="sd"> 加载块段模型文件</span>
|
|
1180
|
+
<span class="sd"> :param file_path: 块段模型文件路径(自动处理编码转换)</span>
|
|
1181
|
+
<span class="sd"> :raises RuntimeError: 加载失败时抛出异常</span>
|
|
1182
|
+
|
|
1183
|
+
<span class="sd"> :result: 是否成功加载模型</span>
|
|
1184
|
+
|
|
1185
|
+
<span class="sd"> example:</span>
|
|
1186
|
+
<span class="sd"> ```python</span>
|
|
1187
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1188
|
+
<span class="sd"> success = block_data.open("model.dmf")</span>
|
|
1189
|
+
<span class="sd"> if success:</span>
|
|
1190
|
+
<span class="sd"> print("模型加载成功")</span>
|
|
1191
|
+
<span class="sd"> else:</span>
|
|
1192
|
+
<span class="sd"> print("模型加载失败")</span>
|
|
1193
|
+
<span class="sd"> ```</span>
|
|
1194
|
+
<span class="sd"> """</span>
|
|
1195
|
+
<span class="n">result</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">Open</span><span class="p">(</span><span class="n">file_path</span><span class="p">)</span>
|
|
1196
|
+
<span class="k">if</span> <span class="ow">not</span> <span class="n">result</span><span class="p">:</span>
|
|
1197
|
+
<span class="k">raise</span> <span class="ne">RuntimeError</span><span class="p">(</span><span class="sa">f</span><span class="s2">"加载块段模型失败: </span><span class="si">{</span><span class="n">file_path</span><span class="si">}</span><span class="s2">"</span><span class="p">)</span>
|
|
1198
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_is_open</span> <span class="o">=</span> <span class="kc">True</span>
|
|
1199
|
+
<span class="k">return</span> <span class="n">result</span>
|
|
1200
|
+
|
|
1201
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">_check_open</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="kc">None</span><span class="p">:</span>
|
|
1202
|
+
<span class="w"> </span><span class="sd">"""内部校验:确保模型已成功加载"""</span>
|
|
1203
|
+
<span class="k">if</span> <span class="ow">not</span> <span class="bp">self</span><span class="o">.</span><span class="n">_is_open</span><span class="p">:</span>
|
|
1204
|
+
<span class="k">raise</span> <span class="ne">RuntimeError</span><span class="p">(</span><span class="s2">"请先调用 open() 加载块段模型"</span><span class="p">)</span>
|
|
1205
|
+
|
|
1206
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">get_origin</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="n">DmDPoint</span><span class="p">:</span>
|
|
1207
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1208
|
+
<span class="sd"> 获取模型原点坐标 (x, y, z)</span>
|
|
1209
|
+
<span class="sd"> :return: 模型原点坐标点对象</span>
|
|
1210
|
+
<span class="sd"> example:</span>
|
|
1211
|
+
<span class="sd"> ```python</span>
|
|
1212
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1213
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1214
|
+
<span class="sd"> origin = block_data.get_origin()</span>
|
|
1215
|
+
<span class="sd"> print(f"模型原点坐标: {origin}")</span>
|
|
1216
|
+
<span class="sd"> ```</span>
|
|
1217
|
+
<span class="sd"> """</span>
|
|
1218
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1219
|
+
<span class="n">cpp_result</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetOrigin</span><span class="p">()</span>
|
|
1220
|
+
<span class="k">return</span> <span class="n">DmDPoint</span><span class="o">.</span><span class="n">_from_obj</span><span class="p">(</span><span class="n">cpp_result</span><span class="p">)</span>
|
|
1221
|
+
|
|
1222
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">get_xyz_length</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="n">List</span><span class="p">[</span><span class="nb">float</span><span class="p">]:</span>
|
|
1223
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1224
|
+
<span class="sd"> 获取模型在 X/Y/Z 三个方向的总长度</span>
|
|
1225
|
+
<span class="sd"> :return: 包含 X/Y/Z 方向总长度的列表 [x_len, y_len, z_len]</span>
|
|
1226
|
+
|
|
1227
|
+
<span class="sd"> example:</span>
|
|
1228
|
+
<span class="sd"> ```python</span>
|
|
1229
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1230
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1231
|
+
<span class="sd"> xyz_len = block_data.get_xyz_length()</span>
|
|
1232
|
+
<span class="sd"> print(f"模型在 X/Y/Z 方向的总长度: {xyz_len}")</span>
|
|
1233
|
+
<span class="sd"> ```</span>
|
|
1234
|
+
<span class="sd"> """</span>
|
|
1235
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1236
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetXYZLen</span><span class="p">()</span>
|
|
1237
|
+
|
|
1238
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">get_max_level</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">int</span><span class="p">:</span>
|
|
1239
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1240
|
+
<span class="sd"> 获取模型的最大精度层级</span>
|
|
1241
|
+
<span class="sd"> :return: 模型的最大精度层级整数</span>
|
|
1242
|
+
|
|
1243
|
+
<span class="sd"> example:</span>
|
|
1244
|
+
<span class="sd"> ```python</span>
|
|
1245
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1246
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1247
|
+
<span class="sd"> max_level = block_data.get_max_level()</span>
|
|
1248
|
+
<span class="sd"> print(f"模型最大精度层级: {max_level}")</span>
|
|
1249
|
+
<span class="sd"> ```</span>
|
|
1250
|
+
<span class="sd"> """</span>
|
|
1251
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1252
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetMaxLevel</span><span class="p">()</span>
|
|
1253
|
+
|
|
1254
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">get_min_size</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="n">List</span><span class="p">[</span><span class="nb">float</span><span class="p">]:</span>
|
|
1255
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1256
|
+
<span class="sd"> 获取模型最小块段的尺寸 (x, y, z)</span>
|
|
1257
|
+
<span class="sd"> :return: 包含最小块段尺寸的列表 [x_size, y_size, z_size]</span>
|
|
1258
|
+
|
|
1259
|
+
<span class="sd"> example:</span>
|
|
1260
|
+
<span class="sd"> ```python</span>
|
|
1261
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1262
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1263
|
+
<span class="sd"> min_size = block_data.get_min_size()</span>
|
|
1264
|
+
<span class="sd"> print(f"模型最小块段尺寸: {min_size}")</span>
|
|
1265
|
+
<span class="sd"> ```</span>
|
|
1266
|
+
<span class="sd"> """</span>
|
|
1267
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1268
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetMinSize</span><span class="p">()</span>
|
|
1269
|
+
|
|
1270
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">get_rotation</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="n">List</span><span class="p">[</span><span class="nb">float</span><span class="p">]:</span>
|
|
1271
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1272
|
+
<span class="sd"> 获取模型的旋转角度 (x, y, z)</span>
|
|
1273
|
+
<span class="sd"> :return: 包含旋转角度的列表 [x_angle, y_angle, z_angle]</span>
|
|
1274
|
+
|
|
1275
|
+
<span class="sd"> example:</span>
|
|
1276
|
+
<span class="sd"> ```python</span>
|
|
1277
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1278
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1279
|
+
<span class="sd"> rotation = block_data.get_rotation()</span>
|
|
1280
|
+
<span class="sd"> print(f"模型旋转角度: {rotation}")</span>
|
|
1281
|
+
<span class="sd"> ```</span>
|
|
1282
|
+
<span class="sd"> """</span>
|
|
1283
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1284
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetRotation</span><span class="p">()</span>
|
|
1285
|
+
|
|
1286
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">get_field_definitions</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="n">List</span><span class="p">[</span><span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]]:</span>
|
|
1287
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1288
|
+
<span class="sd"> 获取模型的字段定义列表,每个字段包含 name/type/size 信息</span>
|
|
1289
|
+
<span class="sd"> :return: 包含字段定义的列表,每个元素为字典 {"name": str, "type": str, "size": int}</span>
|
|
1290
|
+
|
|
1291
|
+
<span class="sd"> example:</span>
|
|
1292
|
+
<span class="sd"> ```python</span>
|
|
1293
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1294
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1295
|
+
<span class="sd"> field_defs = block_data.get_field_definitions()</span>
|
|
1296
|
+
<span class="sd"> print(f"模型字段定义: {field_defs}")</span>
|
|
1297
|
+
<span class="sd"> ```</span>
|
|
1298
|
+
<span class="sd"> """</span>
|
|
1299
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1300
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetFieldDefine</span><span class="p">()</span>
|
|
1301
|
+
|
|
1302
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">get_total_block_count</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">int</span><span class="p">:</span>
|
|
1303
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1304
|
+
<span class="sd"> 获取模型中块段的总数量</span>
|
|
1305
|
+
<span class="sd"> :return: 模型中块段的总数量整数</span>
|
|
1306
|
+
|
|
1307
|
+
<span class="sd"> example:</span>
|
|
1308
|
+
<span class="sd"> ```python</span>
|
|
1309
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1310
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1311
|
+
<span class="sd"> total_count = block_data.get_total_block_count()</span>
|
|
1312
|
+
<span class="sd"> print(f"模型中块段总数量: {total_count}")</span>
|
|
1313
|
+
<span class="sd"> ```</span>
|
|
1314
|
+
<span class="sd"> """</span>
|
|
1315
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1316
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetTotalBlockCount</span><span class="p">()</span>
|
|
1317
|
+
|
|
1318
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">init_cursor</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">int</span><span class="p">:</span>
|
|
1319
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1320
|
+
<span class="sd"> 初始化块段遍历游标,用于遍历所有块段</span>
|
|
1321
|
+
<span class="sd"> :return: 初始化结果整数(0 表示成功)</span>
|
|
1322
|
+
|
|
1323
|
+
<span class="sd"> example:</span>
|
|
1324
|
+
<span class="sd"> ```python</span>
|
|
1325
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1326
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1327
|
+
<span class="sd"> cursor = block_data.init_cursor()</span>
|
|
1328
|
+
<span class="sd"> print(f"初始化游标结果: {cursor}")</span>
|
|
1329
|
+
<span class="sd"> ```</span>
|
|
1330
|
+
<span class="sd"> """</span>
|
|
1331
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1332
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">InitCursor</span><span class="p">()</span>
|
|
1333
|
+
|
|
1334
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">advance_cursor</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
|
1335
|
+
<span class="w"> </span><span class="sd">"""将游标移动到下一个块段</span>
|
|
1336
|
+
<span class="sd"> :return: 是否成功移动(False 表示已遍历结束)</span>
|
|
1337
|
+
|
|
1338
|
+
<span class="sd"> example:</span>
|
|
1339
|
+
<span class="sd"> ```python</span>
|
|
1340
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1341
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1342
|
+
<span class="sd"> cursor = block_data.init_cursor()</span>
|
|
1343
|
+
<span class="sd"> while block_data.advance_cursor():</span>
|
|
1344
|
+
<span class="sd"> # 处理当前块段数据</span>
|
|
1345
|
+
<span class="sd"> pass</span>
|
|
1346
|
+
<span class="sd"> ```</span>
|
|
1347
|
+
<span class="sd"> """</span>
|
|
1348
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1349
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">AdvCursor</span><span class="p">()</span>
|
|
1350
|
+
|
|
1351
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">get_cursor_data</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">field_name</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-></span> <span class="n">Tuple</span><span class="p">[</span><span class="nb">bool</span><span class="p">,</span> <span class="nb">str</span><span class="p">]:</span>
|
|
1352
|
+
<span class="w"> </span><span class="sd">"""获取当前游标指向块段的指定字段值</span>
|
|
1353
|
+
<span class="sd"> :param field_name: 字段名称</span>
|
|
1354
|
+
<span class="sd"> :return: (是否成功, 字段值JSON字符串)</span>
|
|
1355
|
+
|
|
1356
|
+
<span class="sd"> example:</span>
|
|
1357
|
+
<span class="sd"> ```python</span>
|
|
1358
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1359
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1360
|
+
<span class="sd"> cursor = block_data.init_cursor()</span>
|
|
1361
|
+
<span class="sd"> while block_data.advance_cursor():</span>
|
|
1362
|
+
<span class="sd"> success, data = block_data.get_cursor_data("field_name")</span>
|
|
1363
|
+
<span class="sd"> if success:</span>
|
|
1364
|
+
<span class="sd"> print(f"当前块段字段值: {data}")</span>
|
|
1365
|
+
<span class="sd"> ```</span>
|
|
1366
|
+
<span class="sd"> """</span>
|
|
1367
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1368
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetCursorData</span><span class="p">(</span><span class="n">field_name</span><span class="p">)</span>
|
|
1369
|
+
|
|
1370
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">is_beyond_boundary</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
|
1371
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1372
|
+
<span class="sd"> 检查当前游标是否超出模型边界</span>
|
|
1373
|
+
<span class="sd"> :return: 是否超出边界(True/False)</span>
|
|
1374
|
+
|
|
1375
|
+
<span class="sd"> example:</span>
|
|
1376
|
+
<span class="sd"> ```python</span>
|
|
1377
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1378
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1379
|
+
<span class="sd"> cursor = block_data.init_cursor()</span>
|
|
1380
|
+
<span class="sd"> while block_data.advance_cursor():</span>
|
|
1381
|
+
<span class="sd"> if block_data.is_beyond_boundary():</span>
|
|
1382
|
+
<span class="sd"> print("游标超出模型边界")</span>
|
|
1383
|
+
<span class="sd"> break</span>
|
|
1384
|
+
<span class="sd"> ```</span>
|
|
1385
|
+
<span class="sd"> """</span>
|
|
1386
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1387
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">IsBeyondBoundaryNode</span><span class="p">()</span>
|
|
1388
|
+
|
|
1389
|
+
<span class="c1"># 上下文管理器,支持 with 语句</span>
|
|
1390
|
+
<span class="c1"># def __enter__(self) -> "BlockModelCore":</span>
|
|
1391
|
+
<span class="c1"># return self</span>
|
|
1392
|
+
<span class="c1">#</span>
|
|
1393
|
+
<span class="c1"># def __exit__(self, exc_type, exc_val, exc_tb) -> None:</span>
|
|
1394
|
+
<span class="c1"># """资源释放逻辑"""</span>
|
|
1395
|
+
<span class="c1"># self._is_open = False</span>
|
|
1396
|
+
<span class="nd">@staticmethod</span>
|
|
1397
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">create_block_model</span><span class="p">(</span><span class="n">params</span><span class="p">:</span> <span class="n">ModelTransformParams</span><span class="p">)</span> <span class="o">-></span> <span class="nb">dict</span><span class="p">:</span>
|
|
1398
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1399
|
+
<span class="sd"> 创建空块段模型</span>
|
|
1400
|
+
<span class="sd"> :param params: Python字典,包含样长组合所需的参数</span>
|
|
1401
|
+
<span class="sd"> :return: 处理结果,成功返回{"state": "ok", "message": "..."},失败抛出异常</span>
|
|
1402
|
+
|
|
1403
|
+
<span class="sd"> example:</span>
|
|
1404
|
+
<span class="sd"> ```python</span>
|
|
1405
|
+
<span class="sd"> params = ModelTransformParams(</span>
|
|
1406
|
+
<span class="sd"> file_name: "123",</span>
|
|
1407
|
+
<span class="sd"> # 原点</span>
|
|
1408
|
+
<span class="sd"> origin_x = 3.0,origin_y = 3.0,origin_z = 3.0,</span>
|
|
1409
|
+
<span class="sd"> # 旋转角度</span>
|
|
1410
|
+
<span class="sd"> rotate_x = 0.0,rotate_y = 0.0,rotate_z = 0.0,</span>
|
|
1411
|
+
<span class="sd"> # 单元块尺寸</span>
|
|
1412
|
+
<span class="sd"> size_x = 1.0,size_y = 1.0,size_z = 1.0,</span>
|
|
1413
|
+
<span class="sd"> # 延伸长度</span>
|
|
1414
|
+
<span class="sd"> length_x = 10.0,length_y = 10.0,length_z = 10.0,</span>
|
|
1415
|
+
<span class="sd"> )</span>
|
|
1416
|
+
<span class="sd"> response = DmBlockData.create_block_model(params)</span>
|
|
1417
|
+
<span class="sd"> print(f"创建空块段模型结果: {response}")</span>
|
|
1418
|
+
<span class="sd"> ```</span>
|
|
1419
|
+
<span class="sd"> """</span>
|
|
1420
|
+
<span class="n">json_param</span> <span class="o">=</span> <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="n">params</span><span class="o">.</span><span class="n">to_dict</span><span class="p">(),</span> <span class="n">ensure_ascii</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
|
|
1421
|
+
<span class="n">raw_response</span> <span class="o">=</span> <span class="n">Dm</span><span class="o">.</span><span class="n">CreateBlockModel</span><span class="p">(</span><span class="n">json_param</span><span class="p">)</span>
|
|
1422
|
+
<span class="n">response</span> <span class="o">=</span> <span class="n">json</span><span class="o">.</span><span class="n">loads</span><span class="p">(</span><span class="n">raw_response</span><span class="p">)</span>
|
|
1423
|
+
<span class="k">if</span> <span class="n">response</span><span class="p">[</span><span class="s2">"state"</span><span class="p">]</span> <span class="o">==</span> <span class="s2">"failed"</span><span class="p">:</span>
|
|
1424
|
+
<span class="k">raise</span> <span class="ne">RuntimeError</span><span class="p">(</span><span class="sa">f</span><span class="s2">"样长组合失败: </span><span class="si">{</span><span class="n">response</span><span class="p">[</span><span class="s1">'message'</span><span class="p">]</span><span class="si">}</span><span class="s2">"</span><span class="p">)</span>
|
|
1425
|
+
<span class="k">return</span> <span class="n">response</span>
|
|
1426
|
+
|
|
1427
|
+
<span class="nd">@staticmethod</span>
|
|
1428
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">block_constrain_to_dmc_file</span><span class="p">(</span><span class="n">block_model_file</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span><span class="n">constrain_json_param</span><span class="p">:</span><span class="n">BlockModelConstraint</span><span class="p">,</span><span class="n">constrain_result_file</span><span class="p">:</span><span class="nb">str</span><span class="p">)</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
|
1429
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1430
|
+
<span class="sd"> 块约束保存到约束结果dmc文件</span>
|
|
1431
|
+
<span class="sd"> :param block_model_file:</span>
|
|
1432
|
+
<span class="sd"> :param constrain_json_param:</span>
|
|
1433
|
+
<span class="sd"> :param constrain_result_file:</span>
|
|
1434
|
+
<span class="sd"> :return: 处理结果,返回True/False</span>
|
|
1435
|
+
|
|
1436
|
+
<span class="sd"> example:</span>
|
|
1437
|
+
<span class="sd"> ```python</span>
|
|
1438
|
+
<span class="sd"> params = BlockModelConstraint(</span>
|
|
1439
|
+
<span class="sd"> type = 0,file = "model.dmf",range = 0,inside_level = 0,boundary_level = 0,bool_operate = "and",</span>
|
|
1440
|
+
<span class="sd"> )</span>
|
|
1441
|
+
<span class="sd"> response = DmBlockData.block_constrain_to_dmc_file("model.dmf",params,"constrain.dmc")</span>
|
|
1442
|
+
<span class="sd"> print(f"块约束保存到约束结果dmc文件结果: {response}")</span>
|
|
1443
|
+
<span class="sd"> ```</span>
|
|
1444
|
+
<span class="sd"> """</span>
|
|
1445
|
+
<span class="n">json_param</span> <span class="o">=</span> <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="n">constrain_json_param</span><span class="o">.</span><span class="n">to_dict</span><span class="p">(),</span> <span class="n">ensure_ascii</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
|
|
1446
|
+
<span class="n">raw_response</span> <span class="o">=</span> <span class="n">Dm</span><span class="o">.</span><span class="n">BlockConstrainToDmcFile</span><span class="p">(</span><span class="n">block_model_file</span><span class="p">,</span><span class="n">json_param</span><span class="p">,</span><span class="n">constrain_result_file</span><span class="p">)</span>
|
|
1447
|
+
<span class="k">return</span> <span class="n">raw_response</span>
|
|
1448
|
+
</code></pre></div></td></tr></table></div>
|
|
1449
|
+
</details>
|
|
1450
|
+
|
|
1451
|
+
|
|
1452
|
+
|
|
1453
|
+
<div class="doc doc-children">
|
|
1454
|
+
|
|
1455
|
+
|
|
1456
|
+
|
|
1457
|
+
|
|
1458
|
+
|
|
1459
|
+
|
|
1460
|
+
|
|
1461
|
+
|
|
1462
|
+
|
|
1463
|
+
|
|
1464
|
+
<div class="doc doc-object doc-function">
|
|
1465
|
+
|
|
1466
|
+
|
|
1467
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.advance_cursor" class="doc doc-heading">
|
|
1468
|
+
<code class="highlight language-python"><span class="n">advance_cursor</span><span class="p">()</span></code>
|
|
1469
|
+
|
|
1470
|
+
</h4>
|
|
1471
|
+
|
|
1472
|
+
|
|
1473
|
+
<div class="doc doc-contents ">
|
|
1474
|
+
|
|
1475
|
+
<p>将游标移动到下一个块段
|
|
1476
|
+
:return: 是否成功移动(False 表示已遍历结束)</p>
|
|
1477
|
+
<p>example:</p>
|
|
1478
|
+
<pre><code class="language-python">block_data = DmBlockData()
|
|
1479
|
+
block_data.open("model.dmf")
|
|
1480
|
+
cursor = block_data.init_cursor()
|
|
1481
|
+
while block_data.advance_cursor():
|
|
1482
|
+
# 处理当前块段数据
|
|
1483
|
+
pass
|
|
1484
|
+
</code></pre>
|
|
1485
|
+
|
|
1486
|
+
|
|
1487
|
+
<details class="mkdocstrings-source">
|
|
1488
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
1489
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">176</span>
|
|
1490
|
+
<span class="normal">177</span>
|
|
1491
|
+
<span class="normal">178</span>
|
|
1492
|
+
<span class="normal">179</span>
|
|
1493
|
+
<span class="normal">180</span>
|
|
1494
|
+
<span class="normal">181</span>
|
|
1495
|
+
<span class="normal">182</span>
|
|
1496
|
+
<span class="normal">183</span>
|
|
1497
|
+
<span class="normal">184</span>
|
|
1498
|
+
<span class="normal">185</span>
|
|
1499
|
+
<span class="normal">186</span>
|
|
1500
|
+
<span class="normal">187</span>
|
|
1501
|
+
<span class="normal">188</span>
|
|
1502
|
+
<span class="normal">189</span>
|
|
1503
|
+
<span class="normal">190</span>
|
|
1504
|
+
<span class="normal">191</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">advance_cursor</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
|
1505
|
+
<span class="w"> </span><span class="sd">"""将游标移动到下一个块段</span>
|
|
1506
|
+
<span class="sd"> :return: 是否成功移动(False 表示已遍历结束)</span>
|
|
1507
|
+
|
|
1508
|
+
<span class="sd"> example:</span>
|
|
1509
|
+
<span class="sd"> ```python</span>
|
|
1510
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1511
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1512
|
+
<span class="sd"> cursor = block_data.init_cursor()</span>
|
|
1513
|
+
<span class="sd"> while block_data.advance_cursor():</span>
|
|
1514
|
+
<span class="sd"> # 处理当前块段数据</span>
|
|
1515
|
+
<span class="sd"> pass</span>
|
|
1516
|
+
<span class="sd"> ```</span>
|
|
1517
|
+
<span class="sd"> """</span>
|
|
1518
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1519
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">AdvCursor</span><span class="p">()</span>
|
|
1520
|
+
</code></pre></div></td></tr></table></div>
|
|
1521
|
+
</details>
|
|
1522
|
+
</div>
|
|
1523
|
+
|
|
1524
|
+
</div>
|
|
1525
|
+
|
|
1526
|
+
<div class="doc doc-object doc-function">
|
|
1527
|
+
|
|
1528
|
+
|
|
1529
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.block_constrain_to_dmc_file" class="doc doc-heading">
|
|
1530
|
+
<code class="highlight language-python"><span class="n">block_constrain_to_dmc_file</span><span class="p">(</span><span class="n">block_model_file</span><span class="p">,</span> <span class="n">constrain_json_param</span><span class="p">,</span> <span class="n">constrain_result_file</span><span class="p">)</span></code>
|
|
1531
|
+
|
|
1532
|
+
<span class="doc doc-labels">
|
|
1533
|
+
<small class="doc doc-label doc-label-staticmethod"><code>staticmethod</code></small>
|
|
1534
|
+
</span>
|
|
1535
|
+
|
|
1536
|
+
</h4>
|
|
1537
|
+
|
|
1538
|
+
|
|
1539
|
+
<div class="doc doc-contents ">
|
|
1540
|
+
|
|
1541
|
+
<p>块约束保存到约束结果dmc文件
|
|
1542
|
+
:param block_model_file:
|
|
1543
|
+
:param constrain_json_param:
|
|
1544
|
+
:param constrain_result_file:
|
|
1545
|
+
:return: 处理结果,返回True/False</p>
|
|
1546
|
+
<p>example:</p>
|
|
1547
|
+
<pre><code class="language-python">params = BlockModelConstraint(
|
|
1548
|
+
type = 0,file = "model.dmf",range = 0,inside_level = 0,boundary_level = 0,bool_operate = "and",
|
|
1549
|
+
)
|
|
1550
|
+
response = DmBlockData.block_constrain_to_dmc_file("model.dmf",params,"constrain.dmc")
|
|
1551
|
+
print(f"块约束保存到约束结果dmc文件结果: {response}")
|
|
1552
|
+
</code></pre>
|
|
1553
|
+
|
|
1554
|
+
|
|
1555
|
+
<details class="mkdocstrings-source">
|
|
1556
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
1557
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">269</span>
|
|
1558
|
+
<span class="normal">270</span>
|
|
1559
|
+
<span class="normal">271</span>
|
|
1560
|
+
<span class="normal">272</span>
|
|
1561
|
+
<span class="normal">273</span>
|
|
1562
|
+
<span class="normal">274</span>
|
|
1563
|
+
<span class="normal">275</span>
|
|
1564
|
+
<span class="normal">276</span>
|
|
1565
|
+
<span class="normal">277</span>
|
|
1566
|
+
<span class="normal">278</span>
|
|
1567
|
+
<span class="normal">279</span>
|
|
1568
|
+
<span class="normal">280</span>
|
|
1569
|
+
<span class="normal">281</span>
|
|
1570
|
+
<span class="normal">282</span>
|
|
1571
|
+
<span class="normal">283</span>
|
|
1572
|
+
<span class="normal">284</span>
|
|
1573
|
+
<span class="normal">285</span>
|
|
1574
|
+
<span class="normal">286</span>
|
|
1575
|
+
<span class="normal">287</span>
|
|
1576
|
+
<span class="normal">288</span>
|
|
1577
|
+
<span class="normal">289</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="nd">@staticmethod</span>
|
|
1578
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">block_constrain_to_dmc_file</span><span class="p">(</span><span class="n">block_model_file</span><span class="p">:</span> <span class="nb">str</span><span class="p">,</span><span class="n">constrain_json_param</span><span class="p">:</span><span class="n">BlockModelConstraint</span><span class="p">,</span><span class="n">constrain_result_file</span><span class="p">:</span><span class="nb">str</span><span class="p">)</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
|
1579
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1580
|
+
<span class="sd"> 块约束保存到约束结果dmc文件</span>
|
|
1581
|
+
<span class="sd"> :param block_model_file:</span>
|
|
1582
|
+
<span class="sd"> :param constrain_json_param:</span>
|
|
1583
|
+
<span class="sd"> :param constrain_result_file:</span>
|
|
1584
|
+
<span class="sd"> :return: 处理结果,返回True/False</span>
|
|
1585
|
+
|
|
1586
|
+
<span class="sd"> example:</span>
|
|
1587
|
+
<span class="sd"> ```python</span>
|
|
1588
|
+
<span class="sd"> params = BlockModelConstraint(</span>
|
|
1589
|
+
<span class="sd"> type = 0,file = "model.dmf",range = 0,inside_level = 0,boundary_level = 0,bool_operate = "and",</span>
|
|
1590
|
+
<span class="sd"> )</span>
|
|
1591
|
+
<span class="sd"> response = DmBlockData.block_constrain_to_dmc_file("model.dmf",params,"constrain.dmc")</span>
|
|
1592
|
+
<span class="sd"> print(f"块约束保存到约束结果dmc文件结果: {response}")</span>
|
|
1593
|
+
<span class="sd"> ```</span>
|
|
1594
|
+
<span class="sd"> """</span>
|
|
1595
|
+
<span class="n">json_param</span> <span class="o">=</span> <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="n">constrain_json_param</span><span class="o">.</span><span class="n">to_dict</span><span class="p">(),</span> <span class="n">ensure_ascii</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
|
|
1596
|
+
<span class="n">raw_response</span> <span class="o">=</span> <span class="n">Dm</span><span class="o">.</span><span class="n">BlockConstrainToDmcFile</span><span class="p">(</span><span class="n">block_model_file</span><span class="p">,</span><span class="n">json_param</span><span class="p">,</span><span class="n">constrain_result_file</span><span class="p">)</span>
|
|
1597
|
+
<span class="k">return</span> <span class="n">raw_response</span>
|
|
1598
|
+
</code></pre></div></td></tr></table></div>
|
|
1599
|
+
</details>
|
|
1600
|
+
</div>
|
|
1601
|
+
|
|
1602
|
+
</div>
|
|
1603
|
+
|
|
1604
|
+
<div class="doc doc-object doc-function">
|
|
1605
|
+
|
|
1606
|
+
|
|
1607
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.create_block_model" class="doc doc-heading">
|
|
1608
|
+
<code class="highlight language-python"><span class="n">create_block_model</span><span class="p">(</span><span class="n">params</span><span class="p">)</span></code>
|
|
1609
|
+
|
|
1610
|
+
<span class="doc doc-labels">
|
|
1611
|
+
<small class="doc doc-label doc-label-staticmethod"><code>staticmethod</code></small>
|
|
1612
|
+
</span>
|
|
1613
|
+
|
|
1614
|
+
</h4>
|
|
1615
|
+
|
|
1616
|
+
|
|
1617
|
+
<div class="doc doc-contents ">
|
|
1618
|
+
|
|
1619
|
+
<p>创建空块段模型
|
|
1620
|
+
:param params: Python字典,包含样长组合所需的参数
|
|
1621
|
+
:return: 处理结果,成功返回{"state": "ok", "message": "..."},失败抛出异常</p>
|
|
1622
|
+
<p>example:</p>
|
|
1623
|
+
<pre><code class="language-python">params = ModelTransformParams(
|
|
1624
|
+
file_name: "123",
|
|
1625
|
+
# 原点
|
|
1626
|
+
origin_x = 3.0,origin_y = 3.0,origin_z = 3.0,
|
|
1627
|
+
# 旋转角度
|
|
1628
|
+
rotate_x = 0.0,rotate_y = 0.0,rotate_z = 0.0,
|
|
1629
|
+
# 单元块尺寸
|
|
1630
|
+
size_x = 1.0,size_y = 1.0,size_z = 1.0,
|
|
1631
|
+
# 延伸长度
|
|
1632
|
+
length_x = 10.0,length_y = 10.0,length_z = 10.0,
|
|
1633
|
+
)
|
|
1634
|
+
response = DmBlockData.create_block_model(params)
|
|
1635
|
+
print(f"创建空块段模型结果: {response}")
|
|
1636
|
+
</code></pre>
|
|
1637
|
+
|
|
1638
|
+
|
|
1639
|
+
<details class="mkdocstrings-source">
|
|
1640
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
1641
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">238</span>
|
|
1642
|
+
<span class="normal">239</span>
|
|
1643
|
+
<span class="normal">240</span>
|
|
1644
|
+
<span class="normal">241</span>
|
|
1645
|
+
<span class="normal">242</span>
|
|
1646
|
+
<span class="normal">243</span>
|
|
1647
|
+
<span class="normal">244</span>
|
|
1648
|
+
<span class="normal">245</span>
|
|
1649
|
+
<span class="normal">246</span>
|
|
1650
|
+
<span class="normal">247</span>
|
|
1651
|
+
<span class="normal">248</span>
|
|
1652
|
+
<span class="normal">249</span>
|
|
1653
|
+
<span class="normal">250</span>
|
|
1654
|
+
<span class="normal">251</span>
|
|
1655
|
+
<span class="normal">252</span>
|
|
1656
|
+
<span class="normal">253</span>
|
|
1657
|
+
<span class="normal">254</span>
|
|
1658
|
+
<span class="normal">255</span>
|
|
1659
|
+
<span class="normal">256</span>
|
|
1660
|
+
<span class="normal">257</span>
|
|
1661
|
+
<span class="normal">258</span>
|
|
1662
|
+
<span class="normal">259</span>
|
|
1663
|
+
<span class="normal">260</span>
|
|
1664
|
+
<span class="normal">261</span>
|
|
1665
|
+
<span class="normal">262</span>
|
|
1666
|
+
<span class="normal">263</span>
|
|
1667
|
+
<span class="normal">264</span>
|
|
1668
|
+
<span class="normal">265</span>
|
|
1669
|
+
<span class="normal">266</span>
|
|
1670
|
+
<span class="normal">267</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="nd">@staticmethod</span>
|
|
1671
|
+
<span class="k">def</span><span class="w"> </span><span class="nf">create_block_model</span><span class="p">(</span><span class="n">params</span><span class="p">:</span> <span class="n">ModelTransformParams</span><span class="p">)</span> <span class="o">-></span> <span class="nb">dict</span><span class="p">:</span>
|
|
1672
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1673
|
+
<span class="sd"> 创建空块段模型</span>
|
|
1674
|
+
<span class="sd"> :param params: Python字典,包含样长组合所需的参数</span>
|
|
1675
|
+
<span class="sd"> :return: 处理结果,成功返回{"state": "ok", "message": "..."},失败抛出异常</span>
|
|
1676
|
+
|
|
1677
|
+
<span class="sd"> example:</span>
|
|
1678
|
+
<span class="sd"> ```python</span>
|
|
1679
|
+
<span class="sd"> params = ModelTransformParams(</span>
|
|
1680
|
+
<span class="sd"> file_name: "123",</span>
|
|
1681
|
+
<span class="sd"> # 原点</span>
|
|
1682
|
+
<span class="sd"> origin_x = 3.0,origin_y = 3.0,origin_z = 3.0,</span>
|
|
1683
|
+
<span class="sd"> # 旋转角度</span>
|
|
1684
|
+
<span class="sd"> rotate_x = 0.0,rotate_y = 0.0,rotate_z = 0.0,</span>
|
|
1685
|
+
<span class="sd"> # 单元块尺寸</span>
|
|
1686
|
+
<span class="sd"> size_x = 1.0,size_y = 1.0,size_z = 1.0,</span>
|
|
1687
|
+
<span class="sd"> # 延伸长度</span>
|
|
1688
|
+
<span class="sd"> length_x = 10.0,length_y = 10.0,length_z = 10.0,</span>
|
|
1689
|
+
<span class="sd"> )</span>
|
|
1690
|
+
<span class="sd"> response = DmBlockData.create_block_model(params)</span>
|
|
1691
|
+
<span class="sd"> print(f"创建空块段模型结果: {response}")</span>
|
|
1692
|
+
<span class="sd"> ```</span>
|
|
1693
|
+
<span class="sd"> """</span>
|
|
1694
|
+
<span class="n">json_param</span> <span class="o">=</span> <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="n">params</span><span class="o">.</span><span class="n">to_dict</span><span class="p">(),</span> <span class="n">ensure_ascii</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
|
|
1695
|
+
<span class="n">raw_response</span> <span class="o">=</span> <span class="n">Dm</span><span class="o">.</span><span class="n">CreateBlockModel</span><span class="p">(</span><span class="n">json_param</span><span class="p">)</span>
|
|
1696
|
+
<span class="n">response</span> <span class="o">=</span> <span class="n">json</span><span class="o">.</span><span class="n">loads</span><span class="p">(</span><span class="n">raw_response</span><span class="p">)</span>
|
|
1697
|
+
<span class="k">if</span> <span class="n">response</span><span class="p">[</span><span class="s2">"state"</span><span class="p">]</span> <span class="o">==</span> <span class="s2">"failed"</span><span class="p">:</span>
|
|
1698
|
+
<span class="k">raise</span> <span class="ne">RuntimeError</span><span class="p">(</span><span class="sa">f</span><span class="s2">"样长组合失败: </span><span class="si">{</span><span class="n">response</span><span class="p">[</span><span class="s1">'message'</span><span class="p">]</span><span class="si">}</span><span class="s2">"</span><span class="p">)</span>
|
|
1699
|
+
<span class="k">return</span> <span class="n">response</span>
|
|
1700
|
+
</code></pre></div></td></tr></table></div>
|
|
1701
|
+
</details>
|
|
1702
|
+
</div>
|
|
1703
|
+
|
|
1704
|
+
</div>
|
|
1705
|
+
|
|
1706
|
+
<div class="doc doc-object doc-function">
|
|
1707
|
+
|
|
1708
|
+
|
|
1709
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_cursor_data" class="doc doc-heading">
|
|
1710
|
+
<code class="highlight language-python"><span class="n">get_cursor_data</span><span class="p">(</span><span class="n">field_name</span><span class="p">)</span></code>
|
|
1711
|
+
|
|
1712
|
+
</h4>
|
|
1713
|
+
|
|
1714
|
+
|
|
1715
|
+
<div class="doc doc-contents ">
|
|
1716
|
+
|
|
1717
|
+
<p>获取当前游标指向块段的指定字段值
|
|
1718
|
+
:param field_name: 字段名称
|
|
1719
|
+
:return: (是否成功, 字段值JSON字符串)</p>
|
|
1720
|
+
<p>example:</p>
|
|
1721
|
+
<pre><code class="language-python">block_data = DmBlockData()
|
|
1722
|
+
block_data.open("model.dmf")
|
|
1723
|
+
cursor = block_data.init_cursor()
|
|
1724
|
+
while block_data.advance_cursor():
|
|
1725
|
+
success, data = block_data.get_cursor_data("field_name")
|
|
1726
|
+
if success:
|
|
1727
|
+
print(f"当前块段字段值: {data}")
|
|
1728
|
+
</code></pre>
|
|
1729
|
+
|
|
1730
|
+
|
|
1731
|
+
<details class="mkdocstrings-source">
|
|
1732
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
1733
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">193</span>
|
|
1734
|
+
<span class="normal">194</span>
|
|
1735
|
+
<span class="normal">195</span>
|
|
1736
|
+
<span class="normal">196</span>
|
|
1737
|
+
<span class="normal">197</span>
|
|
1738
|
+
<span class="normal">198</span>
|
|
1739
|
+
<span class="normal">199</span>
|
|
1740
|
+
<span class="normal">200</span>
|
|
1741
|
+
<span class="normal">201</span>
|
|
1742
|
+
<span class="normal">202</span>
|
|
1743
|
+
<span class="normal">203</span>
|
|
1744
|
+
<span class="normal">204</span>
|
|
1745
|
+
<span class="normal">205</span>
|
|
1746
|
+
<span class="normal">206</span>
|
|
1747
|
+
<span class="normal">207</span>
|
|
1748
|
+
<span class="normal">208</span>
|
|
1749
|
+
<span class="normal">209</span>
|
|
1750
|
+
<span class="normal">210</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">get_cursor_data</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">field_name</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-></span> <span class="n">Tuple</span><span class="p">[</span><span class="nb">bool</span><span class="p">,</span> <span class="nb">str</span><span class="p">]:</span>
|
|
1751
|
+
<span class="w"> </span><span class="sd">"""获取当前游标指向块段的指定字段值</span>
|
|
1752
|
+
<span class="sd"> :param field_name: 字段名称</span>
|
|
1753
|
+
<span class="sd"> :return: (是否成功, 字段值JSON字符串)</span>
|
|
1754
|
+
|
|
1755
|
+
<span class="sd"> example:</span>
|
|
1756
|
+
<span class="sd"> ```python</span>
|
|
1757
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1758
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1759
|
+
<span class="sd"> cursor = block_data.init_cursor()</span>
|
|
1760
|
+
<span class="sd"> while block_data.advance_cursor():</span>
|
|
1761
|
+
<span class="sd"> success, data = block_data.get_cursor_data("field_name")</span>
|
|
1762
|
+
<span class="sd"> if success:</span>
|
|
1763
|
+
<span class="sd"> print(f"当前块段字段值: {data}")</span>
|
|
1764
|
+
<span class="sd"> ```</span>
|
|
1765
|
+
<span class="sd"> """</span>
|
|
1766
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1767
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetCursorData</span><span class="p">(</span><span class="n">field_name</span><span class="p">)</span>
|
|
1768
|
+
</code></pre></div></td></tr></table></div>
|
|
1769
|
+
</details>
|
|
1770
|
+
</div>
|
|
1771
|
+
|
|
1772
|
+
</div>
|
|
1773
|
+
|
|
1774
|
+
<div class="doc doc-object doc-function">
|
|
1775
|
+
|
|
1776
|
+
|
|
1777
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_field_definitions" class="doc doc-heading">
|
|
1778
|
+
<code class="highlight language-python"><span class="n">get_field_definitions</span><span class="p">()</span></code>
|
|
1779
|
+
|
|
1780
|
+
</h4>
|
|
1781
|
+
|
|
1782
|
+
|
|
1783
|
+
<div class="doc doc-contents ">
|
|
1784
|
+
|
|
1785
|
+
<p>获取模型的字段定义列表,每个字段包含 name/type/size 信息
|
|
1786
|
+
:return: 包含字段定义的列表,每个元素为字典 {"name": str, "type": str, "size": int}</p>
|
|
1787
|
+
<p>example:</p>
|
|
1788
|
+
<pre><code class="language-python">block_data = DmBlockData()
|
|
1789
|
+
block_data.open("model.dmf")
|
|
1790
|
+
field_defs = block_data.get_field_definitions()
|
|
1791
|
+
print(f"模型字段定义: {field_defs}")
|
|
1792
|
+
</code></pre>
|
|
1793
|
+
|
|
1794
|
+
|
|
1795
|
+
<details class="mkdocstrings-source">
|
|
1796
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
1797
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">128</span>
|
|
1798
|
+
<span class="normal">129</span>
|
|
1799
|
+
<span class="normal">130</span>
|
|
1800
|
+
<span class="normal">131</span>
|
|
1801
|
+
<span class="normal">132</span>
|
|
1802
|
+
<span class="normal">133</span>
|
|
1803
|
+
<span class="normal">134</span>
|
|
1804
|
+
<span class="normal">135</span>
|
|
1805
|
+
<span class="normal">136</span>
|
|
1806
|
+
<span class="normal">137</span>
|
|
1807
|
+
<span class="normal">138</span>
|
|
1808
|
+
<span class="normal">139</span>
|
|
1809
|
+
<span class="normal">140</span>
|
|
1810
|
+
<span class="normal">141</span>
|
|
1811
|
+
<span class="normal">142</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">get_field_definitions</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="n">List</span><span class="p">[</span><span class="n">Dict</span><span class="p">[</span><span class="nb">str</span><span class="p">,</span> <span class="n">Any</span><span class="p">]]:</span>
|
|
1812
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1813
|
+
<span class="sd"> 获取模型的字段定义列表,每个字段包含 name/type/size 信息</span>
|
|
1814
|
+
<span class="sd"> :return: 包含字段定义的列表,每个元素为字典 {"name": str, "type": str, "size": int}</span>
|
|
1815
|
+
|
|
1816
|
+
<span class="sd"> example:</span>
|
|
1817
|
+
<span class="sd"> ```python</span>
|
|
1818
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1819
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1820
|
+
<span class="sd"> field_defs = block_data.get_field_definitions()</span>
|
|
1821
|
+
<span class="sd"> print(f"模型字段定义: {field_defs}")</span>
|
|
1822
|
+
<span class="sd"> ```</span>
|
|
1823
|
+
<span class="sd"> """</span>
|
|
1824
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1825
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetFieldDefine</span><span class="p">()</span>
|
|
1826
|
+
</code></pre></div></td></tr></table></div>
|
|
1827
|
+
</details>
|
|
1828
|
+
</div>
|
|
1829
|
+
|
|
1830
|
+
</div>
|
|
1831
|
+
|
|
1832
|
+
<div class="doc doc-object doc-function">
|
|
1833
|
+
|
|
1834
|
+
|
|
1835
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_max_level" class="doc doc-heading">
|
|
1836
|
+
<code class="highlight language-python"><span class="n">get_max_level</span><span class="p">()</span></code>
|
|
1837
|
+
|
|
1838
|
+
</h4>
|
|
1839
|
+
|
|
1840
|
+
|
|
1841
|
+
<div class="doc doc-contents ">
|
|
1842
|
+
|
|
1843
|
+
<p>获取模型的最大精度层级
|
|
1844
|
+
:return: 模型的最大精度层级整数</p>
|
|
1845
|
+
<p>example:</p>
|
|
1846
|
+
<pre><code class="language-python">block_data = DmBlockData()
|
|
1847
|
+
block_data.open("model.dmf")
|
|
1848
|
+
max_level = block_data.get_max_level()
|
|
1849
|
+
print(f"模型最大精度层级: {max_level}")
|
|
1850
|
+
</code></pre>
|
|
1851
|
+
|
|
1852
|
+
|
|
1853
|
+
<details class="mkdocstrings-source">
|
|
1854
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
1855
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">80</span>
|
|
1856
|
+
<span class="normal">81</span>
|
|
1857
|
+
<span class="normal">82</span>
|
|
1858
|
+
<span class="normal">83</span>
|
|
1859
|
+
<span class="normal">84</span>
|
|
1860
|
+
<span class="normal">85</span>
|
|
1861
|
+
<span class="normal">86</span>
|
|
1862
|
+
<span class="normal">87</span>
|
|
1863
|
+
<span class="normal">88</span>
|
|
1864
|
+
<span class="normal">89</span>
|
|
1865
|
+
<span class="normal">90</span>
|
|
1866
|
+
<span class="normal">91</span>
|
|
1867
|
+
<span class="normal">92</span>
|
|
1868
|
+
<span class="normal">93</span>
|
|
1869
|
+
<span class="normal">94</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">get_max_level</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">int</span><span class="p">:</span>
|
|
1870
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1871
|
+
<span class="sd"> 获取模型的最大精度层级</span>
|
|
1872
|
+
<span class="sd"> :return: 模型的最大精度层级整数</span>
|
|
1873
|
+
|
|
1874
|
+
<span class="sd"> example:</span>
|
|
1875
|
+
<span class="sd"> ```python</span>
|
|
1876
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1877
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1878
|
+
<span class="sd"> max_level = block_data.get_max_level()</span>
|
|
1879
|
+
<span class="sd"> print(f"模型最大精度层级: {max_level}")</span>
|
|
1880
|
+
<span class="sd"> ```</span>
|
|
1881
|
+
<span class="sd"> """</span>
|
|
1882
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1883
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetMaxLevel</span><span class="p">()</span>
|
|
1884
|
+
</code></pre></div></td></tr></table></div>
|
|
1885
|
+
</details>
|
|
1886
|
+
</div>
|
|
1887
|
+
|
|
1888
|
+
</div>
|
|
1889
|
+
|
|
1890
|
+
<div class="doc doc-object doc-function">
|
|
1891
|
+
|
|
1892
|
+
|
|
1893
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_min_size" class="doc doc-heading">
|
|
1894
|
+
<code class="highlight language-python"><span class="n">get_min_size</span><span class="p">()</span></code>
|
|
1895
|
+
|
|
1896
|
+
</h4>
|
|
1897
|
+
|
|
1898
|
+
|
|
1899
|
+
<div class="doc doc-contents ">
|
|
1900
|
+
|
|
1901
|
+
<p>获取模型最小块段的尺寸 (x, y, z)
|
|
1902
|
+
:return: 包含最小块段尺寸的列表 [x_size, y_size, z_size]</p>
|
|
1903
|
+
<p>example:</p>
|
|
1904
|
+
<pre><code class="language-python">block_data = DmBlockData()
|
|
1905
|
+
block_data.open("model.dmf")
|
|
1906
|
+
min_size = block_data.get_min_size()
|
|
1907
|
+
print(f"模型最小块段尺寸: {min_size}")
|
|
1908
|
+
</code></pre>
|
|
1909
|
+
|
|
1910
|
+
|
|
1911
|
+
<details class="mkdocstrings-source">
|
|
1912
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
1913
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 96</span>
|
|
1914
|
+
<span class="normal"> 97</span>
|
|
1915
|
+
<span class="normal"> 98</span>
|
|
1916
|
+
<span class="normal"> 99</span>
|
|
1917
|
+
<span class="normal">100</span>
|
|
1918
|
+
<span class="normal">101</span>
|
|
1919
|
+
<span class="normal">102</span>
|
|
1920
|
+
<span class="normal">103</span>
|
|
1921
|
+
<span class="normal">104</span>
|
|
1922
|
+
<span class="normal">105</span>
|
|
1923
|
+
<span class="normal">106</span>
|
|
1924
|
+
<span class="normal">107</span>
|
|
1925
|
+
<span class="normal">108</span>
|
|
1926
|
+
<span class="normal">109</span>
|
|
1927
|
+
<span class="normal">110</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">get_min_size</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="n">List</span><span class="p">[</span><span class="nb">float</span><span class="p">]:</span>
|
|
1928
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1929
|
+
<span class="sd"> 获取模型最小块段的尺寸 (x, y, z)</span>
|
|
1930
|
+
<span class="sd"> :return: 包含最小块段尺寸的列表 [x_size, y_size, z_size]</span>
|
|
1931
|
+
|
|
1932
|
+
<span class="sd"> example:</span>
|
|
1933
|
+
<span class="sd"> ```python</span>
|
|
1934
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1935
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1936
|
+
<span class="sd"> min_size = block_data.get_min_size()</span>
|
|
1937
|
+
<span class="sd"> print(f"模型最小块段尺寸: {min_size}")</span>
|
|
1938
|
+
<span class="sd"> ```</span>
|
|
1939
|
+
<span class="sd"> """</span>
|
|
1940
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1941
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetMinSize</span><span class="p">()</span>
|
|
1942
|
+
</code></pre></div></td></tr></table></div>
|
|
1943
|
+
</details>
|
|
1944
|
+
</div>
|
|
1945
|
+
|
|
1946
|
+
</div>
|
|
1947
|
+
|
|
1948
|
+
<div class="doc doc-object doc-function">
|
|
1949
|
+
|
|
1950
|
+
|
|
1951
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_origin" class="doc doc-heading">
|
|
1952
|
+
<code class="highlight language-python"><span class="n">get_origin</span><span class="p">()</span></code>
|
|
1953
|
+
|
|
1954
|
+
</h4>
|
|
1955
|
+
|
|
1956
|
+
|
|
1957
|
+
<div class="doc doc-contents ">
|
|
1958
|
+
|
|
1959
|
+
<p>获取模型原点坐标 (x, y, z)
|
|
1960
|
+
:return: 模型原点坐标点对象
|
|
1961
|
+
example:</p>
|
|
1962
|
+
<pre><code class="language-python">block_data = DmBlockData()
|
|
1963
|
+
block_data.open("model.dmf")
|
|
1964
|
+
origin = block_data.get_origin()
|
|
1965
|
+
print(f"模型原点坐标: {origin}")
|
|
1966
|
+
</code></pre>
|
|
1967
|
+
|
|
1968
|
+
|
|
1969
|
+
<details class="mkdocstrings-source">
|
|
1970
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
1971
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">48</span>
|
|
1972
|
+
<span class="normal">49</span>
|
|
1973
|
+
<span class="normal">50</span>
|
|
1974
|
+
<span class="normal">51</span>
|
|
1975
|
+
<span class="normal">52</span>
|
|
1976
|
+
<span class="normal">53</span>
|
|
1977
|
+
<span class="normal">54</span>
|
|
1978
|
+
<span class="normal">55</span>
|
|
1979
|
+
<span class="normal">56</span>
|
|
1980
|
+
<span class="normal">57</span>
|
|
1981
|
+
<span class="normal">58</span>
|
|
1982
|
+
<span class="normal">59</span>
|
|
1983
|
+
<span class="normal">60</span>
|
|
1984
|
+
<span class="normal">61</span>
|
|
1985
|
+
<span class="normal">62</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">get_origin</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="n">DmDPoint</span><span class="p">:</span>
|
|
1986
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
1987
|
+
<span class="sd"> 获取模型原点坐标 (x, y, z)</span>
|
|
1988
|
+
<span class="sd"> :return: 模型原点坐标点对象</span>
|
|
1989
|
+
<span class="sd"> example:</span>
|
|
1990
|
+
<span class="sd"> ```python</span>
|
|
1991
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
1992
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
1993
|
+
<span class="sd"> origin = block_data.get_origin()</span>
|
|
1994
|
+
<span class="sd"> print(f"模型原点坐标: {origin}")</span>
|
|
1995
|
+
<span class="sd"> ```</span>
|
|
1996
|
+
<span class="sd"> """</span>
|
|
1997
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
1998
|
+
<span class="n">cpp_result</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetOrigin</span><span class="p">()</span>
|
|
1999
|
+
<span class="k">return</span> <span class="n">DmDPoint</span><span class="o">.</span><span class="n">_from_obj</span><span class="p">(</span><span class="n">cpp_result</span><span class="p">)</span>
|
|
2000
|
+
</code></pre></div></td></tr></table></div>
|
|
2001
|
+
</details>
|
|
2002
|
+
</div>
|
|
2003
|
+
|
|
2004
|
+
</div>
|
|
2005
|
+
|
|
2006
|
+
<div class="doc doc-object doc-function">
|
|
2007
|
+
|
|
2008
|
+
|
|
2009
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_rotation" class="doc doc-heading">
|
|
2010
|
+
<code class="highlight language-python"><span class="n">get_rotation</span><span class="p">()</span></code>
|
|
2011
|
+
|
|
2012
|
+
</h4>
|
|
2013
|
+
|
|
2014
|
+
|
|
2015
|
+
<div class="doc doc-contents ">
|
|
2016
|
+
|
|
2017
|
+
<p>获取模型的旋转角度 (x, y, z)
|
|
2018
|
+
:return: 包含旋转角度的列表 [x_angle, y_angle, z_angle]</p>
|
|
2019
|
+
<p>example:</p>
|
|
2020
|
+
<pre><code class="language-python">block_data = DmBlockData()
|
|
2021
|
+
block_data.open("model.dmf")
|
|
2022
|
+
rotation = block_data.get_rotation()
|
|
2023
|
+
print(f"模型旋转角度: {rotation}")
|
|
2024
|
+
</code></pre>
|
|
2025
|
+
|
|
2026
|
+
|
|
2027
|
+
<details class="mkdocstrings-source">
|
|
2028
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
2029
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">112</span>
|
|
2030
|
+
<span class="normal">113</span>
|
|
2031
|
+
<span class="normal">114</span>
|
|
2032
|
+
<span class="normal">115</span>
|
|
2033
|
+
<span class="normal">116</span>
|
|
2034
|
+
<span class="normal">117</span>
|
|
2035
|
+
<span class="normal">118</span>
|
|
2036
|
+
<span class="normal">119</span>
|
|
2037
|
+
<span class="normal">120</span>
|
|
2038
|
+
<span class="normal">121</span>
|
|
2039
|
+
<span class="normal">122</span>
|
|
2040
|
+
<span class="normal">123</span>
|
|
2041
|
+
<span class="normal">124</span>
|
|
2042
|
+
<span class="normal">125</span>
|
|
2043
|
+
<span class="normal">126</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">get_rotation</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="n">List</span><span class="p">[</span><span class="nb">float</span><span class="p">]:</span>
|
|
2044
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
2045
|
+
<span class="sd"> 获取模型的旋转角度 (x, y, z)</span>
|
|
2046
|
+
<span class="sd"> :return: 包含旋转角度的列表 [x_angle, y_angle, z_angle]</span>
|
|
2047
|
+
|
|
2048
|
+
<span class="sd"> example:</span>
|
|
2049
|
+
<span class="sd"> ```python</span>
|
|
2050
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
2051
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
2052
|
+
<span class="sd"> rotation = block_data.get_rotation()</span>
|
|
2053
|
+
<span class="sd"> print(f"模型旋转角度: {rotation}")</span>
|
|
2054
|
+
<span class="sd"> ```</span>
|
|
2055
|
+
<span class="sd"> """</span>
|
|
2056
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
2057
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetRotation</span><span class="p">()</span>
|
|
2058
|
+
</code></pre></div></td></tr></table></div>
|
|
2059
|
+
</details>
|
|
2060
|
+
</div>
|
|
2061
|
+
|
|
2062
|
+
</div>
|
|
2063
|
+
|
|
2064
|
+
<div class="doc doc-object doc-function">
|
|
2065
|
+
|
|
2066
|
+
|
|
2067
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_total_block_count" class="doc doc-heading">
|
|
2068
|
+
<code class="highlight language-python"><span class="n">get_total_block_count</span><span class="p">()</span></code>
|
|
2069
|
+
|
|
2070
|
+
</h4>
|
|
2071
|
+
|
|
2072
|
+
|
|
2073
|
+
<div class="doc doc-contents ">
|
|
2074
|
+
|
|
2075
|
+
<p>获取模型中块段的总数量
|
|
2076
|
+
:return: 模型中块段的总数量整数</p>
|
|
2077
|
+
<p>example:</p>
|
|
2078
|
+
<pre><code class="language-python">block_data = DmBlockData()
|
|
2079
|
+
block_data.open("model.dmf")
|
|
2080
|
+
total_count = block_data.get_total_block_count()
|
|
2081
|
+
print(f"模型中块段总数量: {total_count}")
|
|
2082
|
+
</code></pre>
|
|
2083
|
+
|
|
2084
|
+
|
|
2085
|
+
<details class="mkdocstrings-source">
|
|
2086
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
2087
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">144</span>
|
|
2088
|
+
<span class="normal">145</span>
|
|
2089
|
+
<span class="normal">146</span>
|
|
2090
|
+
<span class="normal">147</span>
|
|
2091
|
+
<span class="normal">148</span>
|
|
2092
|
+
<span class="normal">149</span>
|
|
2093
|
+
<span class="normal">150</span>
|
|
2094
|
+
<span class="normal">151</span>
|
|
2095
|
+
<span class="normal">152</span>
|
|
2096
|
+
<span class="normal">153</span>
|
|
2097
|
+
<span class="normal">154</span>
|
|
2098
|
+
<span class="normal">155</span>
|
|
2099
|
+
<span class="normal">156</span>
|
|
2100
|
+
<span class="normal">157</span>
|
|
2101
|
+
<span class="normal">158</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">get_total_block_count</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">int</span><span class="p">:</span>
|
|
2102
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
2103
|
+
<span class="sd"> 获取模型中块段的总数量</span>
|
|
2104
|
+
<span class="sd"> :return: 模型中块段的总数量整数</span>
|
|
2105
|
+
|
|
2106
|
+
<span class="sd"> example:</span>
|
|
2107
|
+
<span class="sd"> ```python</span>
|
|
2108
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
2109
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
2110
|
+
<span class="sd"> total_count = block_data.get_total_block_count()</span>
|
|
2111
|
+
<span class="sd"> print(f"模型中块段总数量: {total_count}")</span>
|
|
2112
|
+
<span class="sd"> ```</span>
|
|
2113
|
+
<span class="sd"> """</span>
|
|
2114
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
2115
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetTotalBlockCount</span><span class="p">()</span>
|
|
2116
|
+
</code></pre></div></td></tr></table></div>
|
|
2117
|
+
</details>
|
|
2118
|
+
</div>
|
|
2119
|
+
|
|
2120
|
+
</div>
|
|
2121
|
+
|
|
2122
|
+
<div class="doc doc-object doc-function">
|
|
2123
|
+
|
|
2124
|
+
|
|
2125
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.get_xyz_length" class="doc doc-heading">
|
|
2126
|
+
<code class="highlight language-python"><span class="n">get_xyz_length</span><span class="p">()</span></code>
|
|
2127
|
+
|
|
2128
|
+
</h4>
|
|
2129
|
+
|
|
2130
|
+
|
|
2131
|
+
<div class="doc doc-contents ">
|
|
2132
|
+
|
|
2133
|
+
<p>获取模型在 X/Y/Z 三个方向的总长度
|
|
2134
|
+
:return: 包含 X/Y/Z 方向总长度的列表 [x_len, y_len, z_len]</p>
|
|
2135
|
+
<p>example:</p>
|
|
2136
|
+
<pre><code class="language-python">block_data = DmBlockData()
|
|
2137
|
+
block_data.open("model.dmf")
|
|
2138
|
+
xyz_len = block_data.get_xyz_length()
|
|
2139
|
+
print(f"模型在 X/Y/Z 方向的总长度: {xyz_len}")
|
|
2140
|
+
</code></pre>
|
|
2141
|
+
|
|
2142
|
+
|
|
2143
|
+
<details class="mkdocstrings-source">
|
|
2144
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
2145
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">64</span>
|
|
2146
|
+
<span class="normal">65</span>
|
|
2147
|
+
<span class="normal">66</span>
|
|
2148
|
+
<span class="normal">67</span>
|
|
2149
|
+
<span class="normal">68</span>
|
|
2150
|
+
<span class="normal">69</span>
|
|
2151
|
+
<span class="normal">70</span>
|
|
2152
|
+
<span class="normal">71</span>
|
|
2153
|
+
<span class="normal">72</span>
|
|
2154
|
+
<span class="normal">73</span>
|
|
2155
|
+
<span class="normal">74</span>
|
|
2156
|
+
<span class="normal">75</span>
|
|
2157
|
+
<span class="normal">76</span>
|
|
2158
|
+
<span class="normal">77</span>
|
|
2159
|
+
<span class="normal">78</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">get_xyz_length</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="n">List</span><span class="p">[</span><span class="nb">float</span><span class="p">]:</span>
|
|
2160
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
2161
|
+
<span class="sd"> 获取模型在 X/Y/Z 三个方向的总长度</span>
|
|
2162
|
+
<span class="sd"> :return: 包含 X/Y/Z 方向总长度的列表 [x_len, y_len, z_len]</span>
|
|
2163
|
+
|
|
2164
|
+
<span class="sd"> example:</span>
|
|
2165
|
+
<span class="sd"> ```python</span>
|
|
2166
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
2167
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
2168
|
+
<span class="sd"> xyz_len = block_data.get_xyz_length()</span>
|
|
2169
|
+
<span class="sd"> print(f"模型在 X/Y/Z 方向的总长度: {xyz_len}")</span>
|
|
2170
|
+
<span class="sd"> ```</span>
|
|
2171
|
+
<span class="sd"> """</span>
|
|
2172
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
2173
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">GetXYZLen</span><span class="p">()</span>
|
|
2174
|
+
</code></pre></div></td></tr></table></div>
|
|
2175
|
+
</details>
|
|
2176
|
+
</div>
|
|
2177
|
+
|
|
2178
|
+
</div>
|
|
2179
|
+
|
|
2180
|
+
<div class="doc doc-object doc-function">
|
|
2181
|
+
|
|
2182
|
+
|
|
2183
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.init_cursor" class="doc doc-heading">
|
|
2184
|
+
<code class="highlight language-python"><span class="n">init_cursor</span><span class="p">()</span></code>
|
|
2185
|
+
|
|
2186
|
+
</h4>
|
|
2187
|
+
|
|
2188
|
+
|
|
2189
|
+
<div class="doc doc-contents ">
|
|
2190
|
+
|
|
2191
|
+
<p>初始化块段遍历游标,用于遍历所有块段
|
|
2192
|
+
:return: 初始化结果整数(0 表示成功)</p>
|
|
2193
|
+
<p>example:</p>
|
|
2194
|
+
<pre><code class="language-python">block_data = DmBlockData()
|
|
2195
|
+
block_data.open("model.dmf")
|
|
2196
|
+
cursor = block_data.init_cursor()
|
|
2197
|
+
print(f"初始化游标结果: {cursor}")
|
|
2198
|
+
</code></pre>
|
|
2199
|
+
|
|
2200
|
+
|
|
2201
|
+
<details class="mkdocstrings-source">
|
|
2202
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
2203
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">160</span>
|
|
2204
|
+
<span class="normal">161</span>
|
|
2205
|
+
<span class="normal">162</span>
|
|
2206
|
+
<span class="normal">163</span>
|
|
2207
|
+
<span class="normal">164</span>
|
|
2208
|
+
<span class="normal">165</span>
|
|
2209
|
+
<span class="normal">166</span>
|
|
2210
|
+
<span class="normal">167</span>
|
|
2211
|
+
<span class="normal">168</span>
|
|
2212
|
+
<span class="normal">169</span>
|
|
2213
|
+
<span class="normal">170</span>
|
|
2214
|
+
<span class="normal">171</span>
|
|
2215
|
+
<span class="normal">172</span>
|
|
2216
|
+
<span class="normal">173</span>
|
|
2217
|
+
<span class="normal">174</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">init_cursor</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">int</span><span class="p">:</span>
|
|
2218
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
2219
|
+
<span class="sd"> 初始化块段遍历游标,用于遍历所有块段</span>
|
|
2220
|
+
<span class="sd"> :return: 初始化结果整数(0 表示成功)</span>
|
|
2221
|
+
|
|
2222
|
+
<span class="sd"> example:</span>
|
|
2223
|
+
<span class="sd"> ```python</span>
|
|
2224
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
2225
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
2226
|
+
<span class="sd"> cursor = block_data.init_cursor()</span>
|
|
2227
|
+
<span class="sd"> print(f"初始化游标结果: {cursor}")</span>
|
|
2228
|
+
<span class="sd"> ```</span>
|
|
2229
|
+
<span class="sd"> """</span>
|
|
2230
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
2231
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">InitCursor</span><span class="p">()</span>
|
|
2232
|
+
</code></pre></div></td></tr></table></div>
|
|
2233
|
+
</details>
|
|
2234
|
+
</div>
|
|
2235
|
+
|
|
2236
|
+
</div>
|
|
2237
|
+
|
|
2238
|
+
<div class="doc doc-object doc-function">
|
|
2239
|
+
|
|
2240
|
+
|
|
2241
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.is_beyond_boundary" class="doc doc-heading">
|
|
2242
|
+
<code class="highlight language-python"><span class="n">is_beyond_boundary</span><span class="p">()</span></code>
|
|
2243
|
+
|
|
2244
|
+
</h4>
|
|
2245
|
+
|
|
2246
|
+
|
|
2247
|
+
<div class="doc doc-contents ">
|
|
2248
|
+
|
|
2249
|
+
<p>检查当前游标是否超出模型边界
|
|
2250
|
+
:return: 是否超出边界(True/False)</p>
|
|
2251
|
+
<p>example:</p>
|
|
2252
|
+
<pre><code class="language-python">block_data = DmBlockData()
|
|
2253
|
+
block_data.open("model.dmf")
|
|
2254
|
+
cursor = block_data.init_cursor()
|
|
2255
|
+
while block_data.advance_cursor():
|
|
2256
|
+
if block_data.is_beyond_boundary():
|
|
2257
|
+
print("游标超出模型边界")
|
|
2258
|
+
break
|
|
2259
|
+
</code></pre>
|
|
2260
|
+
|
|
2261
|
+
|
|
2262
|
+
<details class="mkdocstrings-source">
|
|
2263
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
2264
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">212</span>
|
|
2265
|
+
<span class="normal">213</span>
|
|
2266
|
+
<span class="normal">214</span>
|
|
2267
|
+
<span class="normal">215</span>
|
|
2268
|
+
<span class="normal">216</span>
|
|
2269
|
+
<span class="normal">217</span>
|
|
2270
|
+
<span class="normal">218</span>
|
|
2271
|
+
<span class="normal">219</span>
|
|
2272
|
+
<span class="normal">220</span>
|
|
2273
|
+
<span class="normal">221</span>
|
|
2274
|
+
<span class="normal">222</span>
|
|
2275
|
+
<span class="normal">223</span>
|
|
2276
|
+
<span class="normal">224</span>
|
|
2277
|
+
<span class="normal">225</span>
|
|
2278
|
+
<span class="normal">226</span>
|
|
2279
|
+
<span class="normal">227</span>
|
|
2280
|
+
<span class="normal">228</span>
|
|
2281
|
+
<span class="normal">229</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">is_beyond_boundary</span><span class="p">(</span><span class="bp">self</span><span class="p">)</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
|
2282
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
2283
|
+
<span class="sd"> 检查当前游标是否超出模型边界</span>
|
|
2284
|
+
<span class="sd"> :return: 是否超出边界(True/False)</span>
|
|
2285
|
+
|
|
2286
|
+
<span class="sd"> example:</span>
|
|
2287
|
+
<span class="sd"> ```python</span>
|
|
2288
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
2289
|
+
<span class="sd"> block_data.open("model.dmf")</span>
|
|
2290
|
+
<span class="sd"> cursor = block_data.init_cursor()</span>
|
|
2291
|
+
<span class="sd"> while block_data.advance_cursor():</span>
|
|
2292
|
+
<span class="sd"> if block_data.is_beyond_boundary():</span>
|
|
2293
|
+
<span class="sd"> print("游标超出模型边界")</span>
|
|
2294
|
+
<span class="sd"> break</span>
|
|
2295
|
+
<span class="sd"> ```</span>
|
|
2296
|
+
<span class="sd"> """</span>
|
|
2297
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_check_open</span><span class="p">()</span>
|
|
2298
|
+
<span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">IsBeyondBoundaryNode</span><span class="p">()</span>
|
|
2299
|
+
</code></pre></div></td></tr></table></div>
|
|
2300
|
+
</details>
|
|
2301
|
+
</div>
|
|
2302
|
+
|
|
2303
|
+
</div>
|
|
2304
|
+
|
|
2305
|
+
<div class="doc doc-object doc-function">
|
|
2306
|
+
|
|
2307
|
+
|
|
2308
|
+
<h4 id="dimine_python_sdk.lib.prospecting.block_data.DmBlockData.open" class="doc doc-heading">
|
|
2309
|
+
<code class="highlight language-python"><span class="nb">open</span><span class="p">(</span><span class="n">file_path</span><span class="p">)</span></code>
|
|
2310
|
+
|
|
2311
|
+
</h4>
|
|
2312
|
+
|
|
2313
|
+
|
|
2314
|
+
<div class="doc doc-contents ">
|
|
2315
|
+
|
|
2316
|
+
<p>加载块段模型文件
|
|
2317
|
+
:param file_path: 块段模型文件路径(自动处理编码转换)
|
|
2318
|
+
:raises RuntimeError: 加载失败时抛出异常</p>
|
|
2319
|
+
<p>:result: 是否成功加载模型</p>
|
|
2320
|
+
<p>example:</p>
|
|
2321
|
+
<pre><code class="language-python">block_data = DmBlockData()
|
|
2322
|
+
success = block_data.open("model.dmf")
|
|
2323
|
+
if success:
|
|
2324
|
+
print("模型加载成功")
|
|
2325
|
+
else:
|
|
2326
|
+
print("模型加载失败")
|
|
2327
|
+
</code></pre>
|
|
2328
|
+
|
|
2329
|
+
|
|
2330
|
+
<details class="mkdocstrings-source">
|
|
2331
|
+
<summary>Source code in <code>dimine_python_sdk\lib\prospecting\block_data.py</code></summary>
|
|
2332
|
+
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal">19</span>
|
|
2333
|
+
<span class="normal">20</span>
|
|
2334
|
+
<span class="normal">21</span>
|
|
2335
|
+
<span class="normal">22</span>
|
|
2336
|
+
<span class="normal">23</span>
|
|
2337
|
+
<span class="normal">24</span>
|
|
2338
|
+
<span class="normal">25</span>
|
|
2339
|
+
<span class="normal">26</span>
|
|
2340
|
+
<span class="normal">27</span>
|
|
2341
|
+
<span class="normal">28</span>
|
|
2342
|
+
<span class="normal">29</span>
|
|
2343
|
+
<span class="normal">30</span>
|
|
2344
|
+
<span class="normal">31</span>
|
|
2345
|
+
<span class="normal">32</span>
|
|
2346
|
+
<span class="normal">33</span>
|
|
2347
|
+
<span class="normal">34</span>
|
|
2348
|
+
<span class="normal">35</span>
|
|
2349
|
+
<span class="normal">36</span>
|
|
2350
|
+
<span class="normal">37</span>
|
|
2351
|
+
<span class="normal">38</span>
|
|
2352
|
+
<span class="normal">39</span>
|
|
2353
|
+
<span class="normal">40</span>
|
|
2354
|
+
<span class="normal">41</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">def</span><span class="w"> </span><span class="nf">open</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">file_path</span><span class="p">:</span> <span class="nb">str</span><span class="p">)</span> <span class="o">-></span> <span class="nb">bool</span><span class="p">:</span>
|
|
2355
|
+
<span class="w"> </span><span class="sd">"""</span>
|
|
2356
|
+
<span class="sd"> 加载块段模型文件</span>
|
|
2357
|
+
<span class="sd"> :param file_path: 块段模型文件路径(自动处理编码转换)</span>
|
|
2358
|
+
<span class="sd"> :raises RuntimeError: 加载失败时抛出异常</span>
|
|
2359
|
+
|
|
2360
|
+
<span class="sd"> :result: 是否成功加载模型</span>
|
|
2361
|
+
|
|
2362
|
+
<span class="sd"> example:</span>
|
|
2363
|
+
<span class="sd"> ```python</span>
|
|
2364
|
+
<span class="sd"> block_data = DmBlockData()</span>
|
|
2365
|
+
<span class="sd"> success = block_data.open("model.dmf")</span>
|
|
2366
|
+
<span class="sd"> if success:</span>
|
|
2367
|
+
<span class="sd"> print("模型加载成功")</span>
|
|
2368
|
+
<span class="sd"> else:</span>
|
|
2369
|
+
<span class="sd"> print("模型加载失败")</span>
|
|
2370
|
+
<span class="sd"> ```</span>
|
|
2371
|
+
<span class="sd"> """</span>
|
|
2372
|
+
<span class="n">result</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">_block_data</span><span class="o">.</span><span class="n">Open</span><span class="p">(</span><span class="n">file_path</span><span class="p">)</span>
|
|
2373
|
+
<span class="k">if</span> <span class="ow">not</span> <span class="n">result</span><span class="p">:</span>
|
|
2374
|
+
<span class="k">raise</span> <span class="ne">RuntimeError</span><span class="p">(</span><span class="sa">f</span><span class="s2">"加载块段模型失败: </span><span class="si">{</span><span class="n">file_path</span><span class="si">}</span><span class="s2">"</span><span class="p">)</span>
|
|
2375
|
+
<span class="bp">self</span><span class="o">.</span><span class="n">_is_open</span> <span class="o">=</span> <span class="kc">True</span>
|
|
2376
|
+
<span class="k">return</span> <span class="n">result</span>
|
|
2377
|
+
</code></pre></div></td></tr></table></div>
|
|
2378
|
+
</details>
|
|
2379
|
+
</div>
|
|
2380
|
+
|
|
2381
|
+
</div>
|
|
2382
|
+
|
|
2383
|
+
|
|
2384
|
+
|
|
2385
|
+
</div>
|
|
2386
|
+
|
|
2387
|
+
</div>
|
|
2388
|
+
|
|
2389
|
+
</div>
|
|
2390
|
+
|
|
2391
|
+
|
|
2392
|
+
|
|
2393
|
+
|
|
2394
|
+
</div>
|
|
2395
|
+
|
|
2396
|
+
</div>
|
|
2397
|
+
|
|
2398
|
+
</div>
|
|
2399
|
+
|
|
2400
|
+
|
|
2401
|
+
|
|
2402
|
+
|
|
2403
|
+
|
|
2404
|
+
|
|
2405
|
+
|
|
2406
|
+
|
|
2407
|
+
|
|
2408
|
+
|
|
2409
|
+
|
|
2410
|
+
|
|
2411
|
+
|
|
2412
|
+
</article>
|
|
2413
|
+
</div>
|
|
2414
|
+
|
|
2415
|
+
|
|
2416
|
+
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
|
|
2417
|
+
</div>
|
|
2418
|
+
|
|
2419
|
+
</main>
|
|
2420
|
+
|
|
2421
|
+
<footer class="md-footer">
|
|
2422
|
+
|
|
2423
|
+
<div class="md-footer-meta md-typeset">
|
|
2424
|
+
<div class="md-footer-meta__inner md-grid">
|
|
2425
|
+
<div class="md-copyright">
|
|
2426
|
+
|
|
2427
|
+
|
|
2428
|
+
Made with
|
|
2429
|
+
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
|
|
2430
|
+
Material for MkDocs
|
|
2431
|
+
</a>
|
|
2432
|
+
|
|
2433
|
+
</div>
|
|
2434
|
+
|
|
2435
|
+
</div>
|
|
2436
|
+
</div>
|
|
2437
|
+
</footer>
|
|
2438
|
+
|
|
2439
|
+
</div>
|
|
2440
|
+
<div class="md-dialog" data-md-component="dialog">
|
|
2441
|
+
<div class="md-dialog__inner md-typeset"></div>
|
|
2442
|
+
</div>
|
|
2443
|
+
|
|
2444
|
+
|
|
2445
|
+
|
|
2446
|
+
|
|
2447
|
+
|
|
2448
|
+
<script id="__config" type="application/json">{"annotate": null, "base": "../../..", "features": ["navigation.tabs", "navigation.sections", "content.code.copy", "content.action.edit"], "search": "../../../assets/javascripts/workers/search.2c215733.min.js", "tags": null, "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": null}</script>
|
|
2449
|
+
|
|
2450
|
+
|
|
2451
|
+
<script src="../../../assets/javascripts/bundle.79ae519e.min.js"></script>
|
|
2452
|
+
|
|
2453
|
+
|
|
2454
|
+
</body>
|
|
2455
|
+
</html>
|