-
Posts
820 -
Joined
-
Last visited
-
Days Won
44
Content Type
Profiles
Forums
Downloads
Gallery
Everything posted by MikaelH
-
Labview anti-pattern: Action Engines
MikaelH replied to Daklu's topic in Application Design & Architecture
What you could do is to start just using the Singleton Class template, sure it's based on OO, but you don't need to think of that, it's just like a action Engine, but instead of having everything in one VI, you can add several VIs (methods) to the Singleton library (lvlcass), and just because they belong to the same class they all share the same data. You just have to learn how to use the IPE structure to read and modify the shared data. -
I guess Vision Express, is using the Express VIs for vision?!? First never use Express VIs ;-). Second open the example VI of tracking objects: Not sure if it's in LV2019, I'm using 2020. LabVIEW 2020\examples\Vision\Tracking Third, start using LV 64-bit,
-
Labview anti-pattern: Action Engines
MikaelH replied to Daklu's topic in Application Design & Architecture
So always use Singletons instead of FGV when I know I only need one instance of an object, i.e. one memory space that should be shared in my application. Just like a global variable, but using the class to control access to the global data. I've attached a Singleton example that should get you going. The OpenGDS toolkit generates these classes and Access VIs (methods) to make it easy for you. Also I talk a bit about the Singleton pattern and how to create that here: Singletons.zip -
Leaving NI (for real this time)... for SpaceX
MikaelH replied to Aristos Queue's topic in LAVA Lounge
I'm very happy for you. Thanks for all your support over the years. Anytime you need any help, just let me know. -
If you use reference based OO, then you could avoid extra data copying. If you want to use OO you get lots of extra IDE help function with this free add-on. http://opengds.github.io/
- 5 replies
-
- oop
- actor framwork
-
(and 1 more)
Tagged with:
-
Here is an updated version and more complete version of this LINQ VI LcArray_LINQ.vim
-
I just have to add this fun vim using your (@drjdpowell) SQLite library. It's LINQ for LabVIEW (I only spent 20 minutes on it so it's a bit rough) LcArray_LINQ.vim
-
If you Defer Panel Updates, with that save time?
-
You can fix it in 2 ways. 1. Force open the VI and change the dll call (LabVIEW.exe) to not run in the user interface thread. I've tested this and this will speed it up 1000 times or so but... this could crash LV if this code is running in any of LV's special Application instances like Project Provider App instance (And that is where I need the performance improvements in the OpenGDS UML Modeller). 2. Yes, use a Map or Variant look up. See example VI GetTextRect_AnyThread.vi
-
Looks Cool Maybe we should make a public framework for this and a big open source library of UI components. FYI you don't need to wire an empty class constant to the create methods 🙂
-
Get the row column of a table using a mouse click?
MikaelH replied to rharmon@sandia.gov's topic in LabVIEW General
Many controls have invoke nodes like this to convert the click position to more meaning full info, e.g. where in the X/Y plot you click. -
Get the row column of a table using a mouse click?
MikaelH replied to rharmon@sandia.gov's topic in LabVIEW General
This is how you do it (the right way) 😉 -
I've not dared to outsource the building to a build server yet, mostly because we get these strange build errors from time to time, like "This VI broke during the build". Also since my team does quite many builds and we would need multiple build servers since a build could take an hour, and sometime I need to build 6 version right away and that could lock up the build server for 6 hours. But if you get it working close to 100% let me know, then we might switch over.
-
How to do a grouped stacked bar charts in LabVIEW?
MikaelH replied to Yean95's topic in LabVIEW General
If you switch the disabled structures, it shows you how it works better. Using the Graph.Plot feature is just an option, I would probably use a separate Picture conttrol to the left of the Graph that hold the titles. Or when we want to have nice/different types of plot we use a WebBrowser container with html/javascrip code. -
How to do a grouped stacked bar charts in LabVIEW?
MikaelH replied to Yean95's topic in LabVIEW General
So 2014 should be good then 🙂 Maybe it's time to think about upgrading 😉 2020SP1 is Awesome, especially now with Interface support 🙂 Horisontal BarChart-2014.vi -
How to do a grouped stacked bar charts in LabVIEW?
MikaelH replied to Yean95's topic in LabVIEW General
Is 2016 okay? Horisontal BarChart-2016.vi -
How to do a grouped stacked bar charts in LabVIEW?
MikaelH replied to Yean95's topic in LabVIEW General
You can do something like this: Horisontal BarChart.vi -
Thanks, I missed that. Strange that is allows any text and messes up the JSON content completely if it's not valid json.
-
Hi, I do like the new “Retain All Errors” in the Merge Errors, it coverts the Error source to an JOSN array of errors. With that change NI added some extra JSON Error VIs like the Write attribute. But I can’t get those VIs working? I couldn’t find anyone else complaining about this, sure I can just fix the issue myself since the VIs aren’t locked. Are anyone using these VIs?
-
Personnalize color and/or Icon of two instances of same class
MikaelH replied to Bobillier's topic in LabVIEW General
You can do this. I thought that was the main reason for adding interfaces ☺️. BTW, if you're using LV2020 and classes, the new OpenGDS beta version makes it easy to work with interfaces 🙂 -
We modify code while LV is running all the time 🙂 We even have a Quick Drop shortcut that toggles a Sub-VI's Loading Option between "Load with callers" and "Reload for each call".
-
Any reccomendation for tools to get started with OOP?
MikaelH replied to Matt_AM's topic in Object-Oriented Programming
Hi, I just posted my GOOP Training course material here: https://forums.ni.com/t5/GDS-Goop-Development-Suite/GOOP-Course-Material/td-p/4101113 -
NXG, I am trying to love you but you are making it so difficult
MikaelH replied to Neil Pate's topic in LabVIEW General
Same here. It locked the whole OS for some reason when I start NXG. -
And when can we add G code extension to NXG's IDE? I'll move over when I get GDS running there 😉
-
I would use Active objects. Using the OpenGDS tool I created this in no time, see attached project. ActiveObjects.zip