Jump to content

jpdrolet

Members
  • Posts

    367
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by jpdrolet

  1. QUOTE(Tomi Maila @ Mar 1 2007, 10:54 AM) LabVIEW already does the garbage collection for you, such as closing files when the hierarchy that opened the file goes idle. Your Garbage Collector would only attempt to close refnums that are already invalid anyway.
  2. QUOTE(bjarket @ Feb 26 2007, 11:01 AM) On the Data Range properties tab of the control, unselect "Use Default Rang" and set Increment to 0.1
  3. QUOTE(Eugen Graf @ Feb 22 2007, 02:24 PM) Try this VI. It uses the Variant Data Tools to recurse into any structure and swap endianess of numbers
  4. When I call System Exec.vi for example with a PING command, the characters returned in standard output are not the same as in the console window. It seems that the character set is not set correctly as some chars. over 127 are not reproduced correctly. Is there a setting somewhere to tell LabVIEW which charater set to use? LabVIEW 7.1.1 Windows XP Pro French
  5. According to rolfk, LabVIEW does use Math Kernel functionality.
  6. It may be read as the copyright must appear on the front panel of the About box.
  7. OK Time's up. Since 2 can be represented both by 2.0 and 1.9 (where the underscore represents a periodic digit) it seems that the notion of "last decimal digit" in the decimal representation is meaningless... Another useless post by jpdrolet
  8. There was a famous thread on Info-LabVIEW about this issue... Maybe it is easier to begin with the numeric array function _Mulltiply Array Elements_ (MULT(A)) which shows a similar behavior: when applied on an empty array, the result is 1 which is the neutral element of the multiplication. For example if the array A contains N identical elements X then the result MULT(A) is X^N. Then if A is empty a consistent definition for the result is X^0 = 1. This also makes sure that MULT(A|B) (where | denotes array concatenation) always equals MULT(A)*MULT(B) even in the cases where A or B is empty (that wouldn't be true if MULT(empty) was defined to 0). The same logic applies to boolean AND array elelements. If you want AND(A|B) to be always equal to (AND(A) and AND(B)) AND(A|B) = (AND(A) and AND(B)) Now if B is empty the A|B = A AND(A) = AND(A) and AND(empty) which is valid only if AND(empty) = TRUE. The heart of the argument on Info-LabVIEW was a poster that insisted that since the logical operator 'and' is a binary operator (it operates on two arguments) it didn't make sense to apply it on arrays of 0 or 1 element; the result should be undefined. However AND(A) is a different operator, conveniently defined on arrays, a definition including 0 and 1 element arrays: AND(A) == 1 and A[0] and A[1] ... and A[N-1]
  9. HUGE differences: a pressure cooker is NOT expected to explode... and leaves no microwave background radiation.
  10. And connecting wormholes belong to which (un)connected universe :question: And the Universe being the sum of all that exists, how can there be many of them :question: And when the transporter gets you out of quantum phase and you are invisible and pass through walls, why don't you pass through floors :question: And when you're invisible how can you see if the ligth passes through your eyes?
  11. If these universes are truly parallel, then by definition they are NOT connected...
  12. I do, I do. I started IE7 for mere curiosity. My curiosity is fully satisfied now.
  13. Gee... IE7 was pushed as an automatic update on my computer this morning... Look at the first screen on startup: Translation: The level of your security setting exposes your computer to risks. We recommend to browse the Web with your current security settings. To solve this problem, click on the information bar above and then on Change the settings for me To continue your browsing with the current settings, click on the Start button (not recommended) Yeah, right. Now what am I supposed to do??? :thumbdown:
  14. You're not yet crazy, you didn't forgot and it is not a bug: the behavior has been changed. The behavior of data range coercion has been changed in LabVIEW (???). Before, the data was coerced on call but that was potential for bugs very difficult to track down and source of numerous service calls to NI. Indeed there is no visual clue on the diagram indicating that the data was coerced on input. The datarange coercion has been removed for VI calls and you must now coerce the input data using the coerce node on the diagram. There is a message when you convert old VIs to recent LabVIEW versions that tells you that the behavior has changed when data range coercion is used. The data range coercion only occurs for user input.
  15. Nice work! :thumbup: To Michael: This is worth its own thread...
  16. I see a problem with that. After typedef edition, does the diagram constant keep its value (changing the displayed item string) or keep its displayed item string (changing the value)? There are circumstances where the former option is needed and others where it is the latter that is more appropriate.
  17. Look what I found looking into the file lvapp.rsc (LabVIEW 7):
  18. Well with LabVIEW 2+2=5 seems right for large values of 2. 2+2=3 seems equally good for small values of 2. OT Trivia: what is the last decimal digit of 2? Download File:post-447-1163450115.vi
  19. The OGTK is at the rescue. Use Variant tools to set the name of each cluster element to an empty string. However, I think that the solution adds more overhead than simply letting the names. Also, the variant attributes are lost unless you set (or copy/reset) them after the names are removed.
  20. You don't seem to use the type descriptor so you can use _Variant to Flattened String_ instead of Flatten to string. Then you'll transmit only data, without the datatype (which includes names)
  21. jpdrolet

    "LabVIEW"

    Now I'm sure you feel much better, aren't you? Have a nice day and good tea.
  22. Dave is correct. the issue is the offset on the scales degF and degC. Replace "any compatible units" with "most compatible units". Also the VI doesn't work "as is" for composed units like converting from km/s to mi/hr. To work the "unitless" string should be set to km s^-1 mi^-1 hr but since this trick is a hack (units are not supposed to be used that way) that doesn't work. Even then LabVIEW (at least 7.1) is still fragile when modifying unit string both manually or programmatically. I just made it crash again while testing some conversion. While I agree with Dave that the units are an overlooked and clever concept in LabVIEW, it is underdevelopped and there are still many bugs because the feature is seldom used other than a simple passive display. After all, It is not that long that units can be changed dynamically.
  23. I already have code that reads C struct statements (may be embedded) and creates an equivalent G cluster and that is not that involded. I develop that because I needed to read/write a binary configuration from/to a device. The binary data was formatted as the C struct used in the device. It was tedious and error prone to write G code to map the C flat (B? ) data back and forth to G, counting the length of each field, taking care of word alignment, etc. The challenge would be doable for a small subset of C. However, I see such a task as a team project rather than a challenge. The person-hours of willing participants would be better used to work together and not in parallel against each other.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.