Prośba o pomoc w animacji
Prośba o pomoc w animacji
Witam wszystkich.
Proszę o pomoc a raczej dokładne wytłumaczenie, jak spowodować by drzwi w budynku, który sobie narysowałem we FreeCAD 0.20.1 się otwierały i zamykały. Jest to model 3D budynku lokomotywowni w Dynowie w skali 1:87 (H0e) i dobrze by było uruchomić wrota. Jak na razie udało mi się tylko spowodować otwarcie i zamknięcie tych drzwi, ale działa to tylko jako otwarte, lub zamknięte. Nagrałem macro, ale też działa jako otwórz lub zamknij - nie ma płynnego ruchu. Pomocy! Jak to zrobić?
Jestem człowiekiem 72 letnim, nie znam angielskiego a w temacie programowania też jestem zielony, jak szczypiorek na wiosnę i stąd moja prośba o dokładne wytłumaczenie tematu, najlepiej krok po kroku.
Pozdrawiam Tomek.
Chętnie bym dołączył obraz tego obiektu, ale nie wiem jak to zrobić. FreeCAD nie oferuje zapisu w formacie GIF, ani JPEG.
Proszę o pomoc a raczej dokładne wytłumaczenie, jak spowodować by drzwi w budynku, który sobie narysowałem we FreeCAD 0.20.1 się otwierały i zamykały. Jest to model 3D budynku lokomotywowni w Dynowie w skali 1:87 (H0e) i dobrze by było uruchomić wrota. Jak na razie udało mi się tylko spowodować otwarcie i zamknięcie tych drzwi, ale działa to tylko jako otwarte, lub zamknięte. Nagrałem macro, ale też działa jako otwórz lub zamknij - nie ma płynnego ruchu. Pomocy! Jak to zrobić?
Jestem człowiekiem 72 letnim, nie znam angielskiego a w temacie programowania też jestem zielony, jak szczypiorek na wiosnę i stąd moja prośba o dokładne wytłumaczenie tematu, najlepiej krok po kroku.
Pozdrawiam Tomek.
Chętnie bym dołączył obraz tego obiektu, ale nie wiem jak to zrobić. FreeCAD nie oferuje zapisu w formacie GIF, ani JPEG.
Re: Prośba o pomoc w animacji
1 - Add Files
2 - Place inline
2 - Place inline
Re: Prośba o pomoc w animacji
Spróbuję dodać obraz.
Re: Prośba o pomoc w animacji
No i się nie udało
Re: Prośba o pomoc w animacji
Udalo sie... dolaczyc FreeCAD file.
Zeby dolaczyc obrazek, musisz go najpierw zrobic a potem dolaczyc...
Zeby dolaczyc obrazek, musisz go najpierw zrobic a potem dolaczyc...
Re: Prośba o pomoc w animacji
Dla wygody zmniejszyłem i zmodyfikowałem projekt.
Przez ciągłą zmianę zawartości tej komórki uzyskujemy efekt animacji.
Można to zrobić za pomocą skryptu.
Wzorowałem się na tym oto skrypcie, napisanym swego czasu przez "kwahoo":
viewtopic.php?p=541101#p541101
Dodałem arkusz kalkulacyjny, w którym można zmieniać stopień otwarcia drzwi w komórce A2.Przez ciągłą zmianę zawartości tej komórki uzyskujemy efekt animacji.
Można to zrobić za pomocą skryptu.
Code: Select all
import FreeCAD as App, FreeCADGui as Gui, Part, time
from PySide2 import QtGui,QtCore
class Animation(object):
def __init__(self):
App.Console.PrintMessage('Animacja wystartowala\n')
App.ActiveDocument.recompute()
self.timer = QtCore.QTimer()
QtCore.QObject.connect(self.timer, QtCore.SIGNAL("timeout()"), self.my_update)
self.timer.start(100) #krok co 0,1 sekundy (100 ms)
self.val = 50.0 #wartosc poczatkowa
self.step = 2.0 #wielkosc kroku
self.end = 0.0 #wartosc koncowa
def my_update(self):
App.ActiveDocument.Spreadsheet.set("A2", str(self.val)) #wpisujemy aktualna wartosc w komorke A2
self.val = self.val - self.step #kolejna wartosc bedzie pomniejszona o krok
App.ActiveDocument.recompute() #przeliczamy dokument
if self.val < self.end: #zatrzymanie aktualizacji osiagnela 0
self.timer.stop()
App.Console.PrintMessage('Animacja dotarla do konca\n')
def stop(self):
self.timer.stop()
App.Console.PrintMessage('Animacja zatrzymana\n')
animation = Animation()
Wzorowałem się na tym oto skrypcie, napisanym swego czasu przez "kwahoo":
viewtopic.php?p=541101#p541101
Re: Prośba o pomoc w animacji
Dziękuję za odpowiedź. W dalszym ciągu nie rozumiem skąd się wziął arkusz kalkulacyjny i jak uruchomić animację.
Pozdrawiam Tomek
Pozdrawiam Tomek
Re: Prośba o pomoc w animacji
Arkusze kalkulacyjne we FreeCAD umożliwiają definiowanie parametrów związanych z modelem, które można łatwo zmienić z poziomu tabelki. Natomiast efekt animacji jest w tym przypadku wywoływany przez uruchomienie załączonego skryptu. Wystarczy go zapisać w pliku tekstowym, zmienić jego rozszerzenie na .py, otworzyć we FreeCAD i kliknąć zieloną strzałkę opisaną jako uruchomienie makra. Animacja zostanie włączona w oknie z modelem 3D.
Re: Prośba o pomoc w animacji
Dziękuję za odpowiedź.
Pozdrawiam Tomek
Pozdrawiam Tomek