iam-git / WellMet (public) (License: MIT) (since 2021-08-31) (hash sha1)
WellMet is pure Python framework for spatial structural reliability analysis. Or, more specifically, for "failure probability estimation and detection of failure surfaces by adaptive sequential decomposition of the design domain".
List of commits:
Subject Hash Author Date (UTC)
qt_gui.qt_pairwise: add auto arnge and auto levels controls 9bc2cf10a9a1695c2c1a5f6a9959f375d3808a71 I am 2022-11-09 18:16:47
qt_gui.qt_pairwise: set blue -1 by default. Add force_update option in Contact widget 7371575784df7fd41bd76ad29caf38f474a06a26 I am 2022-11-09 15:39:03
qt_gui.qt_pairwise: prepare Contact widget bfa78d7493f5eb04b6bd3a4ad26dd1a92d17a895 I am 2022-11-09 03:36:05
qt_gui.qt_pairwise: prepare more mouse event signals c60e613508480c68483b3d0d6ad6c876b27f539c I am 2022-11-08 01:55:14
qt_gui: introduce reworked matrix view window e28b95c5f418a7a3cea0cb84ca82b40275a71061 I am 2022-11-07 02:20:45
introduce wireframe module for the contacts finding functionality b6068dd92663699859ea7cbf3aac00178d120e0f I am 2022-10-25 14:24:37
voronoi.TwoPoints: atleast_2d() one line fix 9f8bd9e5370ccf30887b6218331ee664788a3b91 I am 2022-10-25 07:09:57
voronoi: implement faster TwoPoints class. c0af78f64bc78a6b8cf06e3ea244339549318b66 I am 2022-10-24 13:03:26
voronoi: implement TwoHorses class. Třída je, bohužel, bezcenná :( 4f6fe186f3f344fa7ee9e518798499099615b466 I am 2022-10-23 10:00:43
voronoi: WIP 23c63ede5bc2ec51d25aed850dc59299db438e34 I am 2022-10-21 12:27:01
IS_stat.sample_alike: use any possible fallback options to sample 80fb6d086e9f17350a1725a319e40bf29591869e I am 2022-10-20 08:56:42
voronoi: WIP ba912d406de12142f2e15a73090118184a0166a4 I am 2022-10-20 02:43:12
IS_stat: add sample_alike() function 2e5394d264b7aaaf5f2486c736ed8cc37afbd030 I am 2022-10-19 13:00:17
voronoi: WIP c3bfa60b6db2042df11528fe95a51d7cc88d3c6b I am 2022-10-19 11:18:13
voronoi: WIP baff3c5ccaf857f60194917fe5d6e33c40b01265 I am 2022-10-19 09:28:33
voronoi.ConvexSpline: little fix of np.sign() for better sleep 968f649e54d97abd596cd60749872fa3ef788c06 I am 2022-10-19 06:28:46
implement even more optimized Convex.. now ConvexSpline class c08511aecb32b880e73c9f10d07feff4dc588e8b I am 2022-10-19 04:11:13
voronoi: WIP cbb61d4544367a67c9a5c3fe6d64a9dc284eb364 I am 2022-10-18 05:05:44
voronoi: WIP e9c247fef30cfb678bad9b955d6f6a94a0ff61e7 I am 2022-10-18 01:02:30
candynodex: hotfix to support numpy masking indexing f359123b72a3d998d5eed4b9e611a5e402a18c8d I am 2022-10-17 09:02:33
Commit 9bc2cf10a9a1695c2c1a5f6a9959f375d3808a71 - qt_gui.qt_pairwise: add auto arnge and auto levels controls
Author: I am
Author date (UTC): 2022-11-09 18:16
Committer name: I am
Committer date (UTC): 2022-11-09 18:16
Parent(s): 7371575784df7fd41bd76ad29caf38f474a06a26
Signer:
Signing key:
Signing status: N
Tree: 3f5609b44edca02ef483561fd33f9c92d57336ca
File Lines added Lines deleted
wellmet/qt_gui/qt_pairwise.py 30 5
File wellmet/qt_gui/qt_pairwise.py changed (mode: 100644) (index 1fa2028..924117b)
... ... class MatrixWindow(QtWidgets.QMainWindow):
167 167 ## Create a grid layout to manage the widgets size and position ## Create a grid layout to manage the widgets size and position
168 168 self.layout = pg.LayoutWidget() self.layout = pg.LayoutWidget()
169 169 self.setCentralWidget(self.layout) self.setCentralWidget(self.layout)
170
171 self.list_view = QtWidgets.QListWidget()
170 172
171 173 self.image_view = MView(self, parent=self.layout) self.image_view = MView(self, parent=self.layout)
172 174
 
... ... class MatrixWindow(QtWidgets.QMainWindow):
202 204
203 205
204 206
207 dock = QtWidgets.QDockWidget("View", self)
208 dock.setWidget(self.list_view)
209 self.dockables.append(dock)
210 self.addDockWidget(QtCore.Qt.RightDockWidgetArea, dock)
211
205 212
206 213 dock = QtWidgets.QDockWidget("Contacts", self) dock = QtWidgets.QDockWidget("Contacts", self)
207 214 dock.setWidget(ContactWidget(self, dock)) dock.setWidget(ContactWidget(self, dock))
 
... ... class CustomViewBox(pg.ViewBox):
414 421
415 422
416 423
424 right_button = QtCore.Qt.MouseButton.RightButton
425 left_button = QtCore.Qt.MouseButton.LeftButton
417 426
418 427 class MView(pg.ImageView): class MView(pg.ImageView):
419 428 mouse_moved = QtCore.pyqtSignal(int, int) mouse_moved = QtCore.pyqtSignal(int, int)
 
... ... class MView(pg.ImageView):
421 430 mouse_double_clicked = QtCore.pyqtSignal(int, int) mouse_double_clicked = QtCore.pyqtSignal(int, int)
422 431 mouse_right_dragged = QtCore.pyqtSignal(int, int) mouse_right_dragged = QtCore.pyqtSignal(int, int)
423 432
424 right_button = QtCore.Qt.MouseButton.RightButton
425 left_button = QtCore.Qt.MouseButton.LeftButton
426
433
427 434 def __init__(self, w, *args, **kwargs): def __init__(self, w, *args, **kwargs):
428 435 self.vb = CustomViewBox() self.vb = CustomViewBox()
429 436 self.pi = pg.PlotItem(viewBox=self.vb) self.pi = pg.PlotItem(viewBox=self.vb)
 
... ... class MView(pg.ImageView):
442 449 #self.setBackground('w') #self.setBackground('w')
443 450
444 451
452 self.ar_item = QtWidgets.QListWidgetItem('auto range')
453 self.ar_item.setFlags(self.ar_item.flags() | QtCore.Qt.ItemIsUserCheckable)
454 self.ar_item.setCheckState(QtCore.Qt.Checked)
455 w.list_view.addItem(self.ar_item)
456
457 self.al_item = QtWidgets.QListWidgetItem('auto levels')
458 self.al_item.setFlags(self.al_item.flags() | QtCore.Qt.ItemIsUserCheckable)
459 self.al_item.setCheckState(QtCore.Qt.Checked)
460 w.list_view.addItem(self.al_item)
461
462
463
445 464 self.proxy = pg.SignalProxy(self.pi.scene().sigMouseMoved, self.proxy = pg.SignalProxy(self.pi.scene().sigMouseMoved,
446 465 rateLimit=60, slot=self.on_mouse_moved) rateLimit=60, slot=self.on_mouse_moved)
447 466 self.x = -1 self.x = -1
 
... ... class MView(pg.ImageView):
483 502
484 503
485 504 def update(self, **kwargs): def update(self, **kwargs):
505 if 'autoRange' not in kwargs:
506 kwargs['autoRange'] = self.ar_item.checkState()
507 if 'autoLevels' not in kwargs:
508 kwargs['autoLevels'] = self.al_item.checkState()
509
486 510 self.setImage(self.data.T, levelMode='rgba', **kwargs) self.setImage(self.data.T, levelMode='rgba', **kwargs)
511
487 512
488 513 def on_mouse_moved(self, evt): def on_mouse_moved(self, evt):
489 514 pos = evt[0] ## using signal proxy turns original arguments into a tuple pos = evt[0] ## using signal proxy turns original arguments into a tuple
 
... ... class MView(pg.ImageView):
503 528 self.x = x self.x = x
504 529 self.y = y self.y = y
505 530 self.mouse_moved.emit(x, y) self.mouse_moved.emit(x, y)
506 if self.app.mouseButtons() == self.right_button:
531 if self.app.mouseButtons() == right_button:
507 532 self.mouse_right_dragged.emit(x, y) self.mouse_right_dragged.emit(x, y)
508 533
509 534
 
... ... class MView(pg.ImageView):
513 538 return None return None
514 539 if evt.double(): if evt.double():
515 540 self.mouse_double_clicked.emit(self.x, self.y) self.mouse_double_clicked.emit(self.x, self.y)
516 elif evt.button() == self.left_button:
541 elif evt.button() == left_button:
517 542 self.mouse_clicked.emit(self.x, self.y) self.mouse_clicked.emit(self.x, self.y)
518 543
519 544
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/iam-git/WellMet

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/iam-git/WellMet

Clone this repository using git:
git clone git://git.rocketgit.com/user/iam-git/WellMet

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main