CanvasDrewLine

Jeśli masz problem z LabWindows napisz, postaramy się pomóc.
Tasmil
Posty: 1
Rejestracja: 24 lis 2009 15:07
Wersja środowiska: LabVIEW 8.0

CanvasDrewLine

Post autor: Tasmil » 24 lis 2009 15:12

Witam szanowne grono
Mam pytanko odnośnie linii dodanych na canvasie, a mianowicie jak je usuwać w czasie działania programu.
Mam dwa punkty, które nanoszę i potem łącze linią, chciałbym aby po przeniesieniu jednego punkty stara linia zniknęła

Proszę o podpowiedzi

Awatar użytkownika
maciekwp
Posty: 46
Rejestracja: 03 kwie 2007 00:00
Wersja środowiska: Nie mam LabVIEW
Lokalizacja: Warszawa

Re: CanvasDrewLine

Post autor: maciekwp » 24 lis 2009 22:57

O ile mi wiadomo to takich cudów jak usuwanie pojedynczo rysowanych elementów z "Canvasa" po prostu nie ma. Działa to jak tablica, kreda i gąbka i już... i trzeba się z tym pogodzić (ma to też swoje zalety).

Widzę tutaj kilka opcji:
1. Wyczyścić "Canvas" i narysować wszystko od nowa.
2. Zapamiętać obraz z "Canvasa" przed narysowaniem punktów i linii a następnie wczytywać i nanosić nowe punkty (ma to sens jedynie gdy rysujemy tam wcześniej jakieś skomplikowane tło dla tychże punktów i linii).
3. Zamiast "Canvas" użyć "Graph" (i używać funkcji do kasowania poszczególnych plotów).

Myślę że rozwiązań jest o wiele więcej niż tu przedstawione ale tu już przydało by się więcej szczegółów a może nawet jakiś przykładowy obrazek...
w palcu siła...

Awatar użytkownika
vugie
Posty: 383
Rejestracja: 17 lis 2006 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Warszawa

CanvasDrewLine

Post autor: vugie » 24 lis 2009 23:16

Jeżeli Canvas jest odpowiednikiem Picture Control w LabVIEW, to można jego zawartość zrzutować na string i usunąć/zmodyfikować stosowny kawałek - wszystkie kolejne operacje są tam zapisane jedna po drugiej jako tzw. OPCODE z odpowiednimi parametrami. Indeksy w stringu gdzie występuje interesująca nas operacja można odczytać z długości stringa przed jej wykonaniem.
Więcej informacji i przykłady (w LV) tutaj.

Awatar użytkownika
maciekwp
Posty: 46
Rejestracja: 03 kwie 2007 00:00
Wersja środowiska: Nie mam LabVIEW
Lokalizacja: Warszawa

Re: CanvasDrewLine

Post autor: maciekwp » 25 lis 2009 18:52

To se ne da...
Canvas jest tak pomyślany że ma być prosty jak budowa cepa ale w zamian bardzo szybki w działaniu (i taki właśnie jest).
w palcu siła...

ODPOWIEDZ