Brauche Hilfe bei der Herstellung von Zahnrädern
Übersicht

HansyBetreff: Brauche Hilfe bei der Herstellung von Zahnrädern |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi,
ich bin neu hier und auch ein absoluter Noob in Sachen Programmieren in BB. Ich brauche eure Hilfe ( ,denn ihr seid Deutschland! ) ![]() Neee also ich möchte zwei Zahnräder erstellen. Das eine Zahnrad soll 24 Zähne haben und das andere 8 Zahnräder. Man soll es per Startknopf starten und pausieren können. Und es sollte wenn man auf Start drückt dort folgendes stehen: Wenn die Last außen hängt, muss die Kraft innen angreifen, um das Gleichgewicht zu halten. Hebelgesetz = L * 24 = F * 8 3 * L = F Übersetzungsverhältnis 3:1 Man braucht die dreifache Kraft ----------- Man Braucht aber jedoch nur 1/3 der Seillänge. Das kleine Rad dreht sich drei mal so schnell, wie das Große. Ich hoffe ihr könnt mir helfen ... ![]() MFG Hansy 8) |
||
![]() |
x-pressive |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du verrätst, was du machen willst, bzw. wozu du das brauchst, kann man dir besser helfen. Wenn es z.B. für ein Spiel und nicht für eine wissenschaftliche Physik-Simulation ist, gibt es keinen Grund, das so kompliziert zu machen -es sei denn, du willst dich selbst quälen ![]() Wichtig in einem Spiel ist nur, was man sieht, nicht, wie es funktioniert. |
||
• BLITZ SHOWCASE:
PARTICLE CANDY • PARTICLE CANDY FOR iPHONE • SPRITE CANDY • DON'T GET ANGRY! 2-3 • CLICK CLACK XL |
![]() |
sunny |
![]() Antworten mit Zitat ![]() |
---|---|---|
Solange der Lehrer (ich hoffe der Lehrer geht in anderen Fällen aber auch) nicht sehen will wie du es programmiert hast, sondern was du programmiert hast könntest du dir die weniger schwierige Möglichkeit aussuchen und es einfach "designen". (wie es x-pressiv gesagt hat)
Z.b. 1. Erstellst du die 2 Zahnräder per Bilder 2. Erstellst die buttons 3. Du proggst die zugehörige Kollisonsabfrage und auch die folgende If-Bedingung für den Mausklick und lässt dann z.b. in einer Funktion beide Zahnräder sich per Befehl Rotateimage und einer Forschleife drehen. 4. Außerdem muss nach dieser Funktion noch stehen, dass die Sätze die du oben beschrieben hast gezeigt werden Ich hoffe du hast es einigermaßen verstanden aber auch für einen noob (bin ja auch noch einer ![]() Wenn du es nicht kapierst kann ich es noch einmal genauer mit BB-Code beschreiben. Schwieriger ist es wenndu es nicht "designen" darfst, sondern die Formel anwenden muss, da bin ich leider mit meinem latein am ende ![]() |
||
Hansy |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
![]() @x-pressive Ja also es soll nicht für ein Spiel sein, sondern für den Physik-Unterricht. (Wissenschaftliche Physik-Simulation) Es muss nur so aussehen als ob. Der Code kann schlecht Strukturiert sein... Nur muss das Programm laufen ![]() ![]() ![]() Hansy |
||
![]() |
sunny |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dann sollte es eigentlich leicht sein ![]() Ich werde einmal mein Beispiel was ich unten abgegeben habe näher erklären. Das ist was ich unter Hilfe verstehe so solltest nämlich nicht erwarten, dass wir dir einen lauffähigen Code bereitstellen werden. Solltest du aber mit ein bisschen Logik schon selbst gebacken kriegen. Erst mal must du die Voreinstellungen treffen wie Graphics und das Laden der Bilder. ( Vergiss niocht das "globaliesieren" der Variabeln falls du eine Funktion oder ein Unterprogramm benutzt) Auch den Befehl BlitzBasic: [AUSKLAPPEN] MidHandle solltest du nicht vergessen Dann zeichnest du immer wieder (also in einer Schleife die beiden Zahnräder und natürlich die Buttons Start und Pause. Mit anderen Worten erstellst du eine Repeat-Schleife das würde dann ungefähr so aussehen: BlitzBasic: [AUSKLAPPEN] Repeat Du solltest aber kürzere Variabeln usw. verwenden. In der Schleife dürfen aber auch nicht die Kollisionabfragen fehlen. Da ich denke, dass du der Maus noch kein Bild zugewiesen hast benutze ich die Methode aus der Steinzeit. Das heißt du prüfst ob sich die Maus zwischen den genannten x und y koordinaten befindet. Wenn dann z.B. der erste Button 100 * 50 Pixel groß wäre müsstest du abfragen ob sich die Maus zwischen den Koordinaten buttonx - 50, buttonx + 50 und zwischen buttony-25 und buttony+25 befindet. Dazu "solltest" du den Mauskoordinaten esrt mal eine Variable zuweisen d.h. BlitzBasic: [AUSKLAPPEN]
Auch muss noch der mausklick mit mousedown(1) geprüft werden um darauf zum Unterprogramm "Drehung" zu gehen. Jetzt ergänze ich einfach mal den ganzen Code: was neu ist habe ich eingestrichelt und die Variabeln wurden gekürzt! ;Voreinstellungen wie SetBuffer, Global mx,my usw. Repeat cls ;---------------------------------------------------------------------------- mx = mousex() my = mousey() ;---------------------------------------------------------------------------- drawimage zr1, zrkx_1,zrky_1 drawimage zr2, zrkx_2,zrky_2 drawimage b1 , bx_1, by_1 drawimage b2 , bx_2, by_2 ;------------------------------------------------------------------------------ ;Jetzt kommt die Abfrage aber nur für den ersten Button If mx>bx_1-50 and mx<bx_1+50and my>by_1-25 and my<by_1+25 then If mousedown(1) then gosub Drehung ;------------------------------------------------------------------------------ delay 5 flip forever Das ist zwar nicht der beste Weg aber er ist mir am schnellsten eingefallen Weiter gehts mit der Drehung der Zahnräder Du erstellst einfach eine Sprungmarke nach dem Forever also schreibst BlitzBasic: [AUSKLAPPEN] .Drehung Auch die Drehung ist dank dem For und dem Rotateimagebefehl sehr leicht, also geraten wir hier einfach in eine Forschleife die danach sofort zurückspringt (Mist jetzt schreibe ich dir ja doch nen Code ![]() Auch vor den Variabeln x und y muss am Anfang der Befehl BlitzBasic: [AUSKLAPPEN] Global stehen BlitzBasic: [AUSKLAPPEN] .Drehung So habe leider keine Zeit mehr für die Pausefunktion, bitte verbessert mich bei fehlern und ich hoffe du hast es verstanden ![]() Wenn ihr meint der Bode ist ****** dann geb ich euch recht denn ich bin auch nur ein noob ![]() Ich hoffe die restlichen paar Befehjle kannst du dir selbst erdenken ![]() |
||
![]() |
sunny |
![]() Antworten mit Zitat ![]() |
---|---|---|
Oh was ich leider noch vergessen ahbe ist, dass du zum schreiben des Hebelgestzes am besten den Befehl BlitzBasic: [AUSKLAPPEN] Text nimmst. |
||
Hansy |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
@sunny
Danke vielmals! ![]() Der Text = ![]() Danke für deine Mühe ![]() Du hast mir sehr weitergeholfen ![]() mfg hansy |
||
![]() |
sunny |
![]() Antworten mit Zitat ![]() |
---|---|---|
Soll das heißen du hast es einigermaßen kapiert oder nicht? | ||
Hansy |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ja das soll heißen das ich aus deinem Text viel benutzen bzw. daraus gelertn habe ! ![]() Und nochmals danke ! 8) mfg hansy |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group