Farberkennung , ein Sensor wird am Auto dargestellt.

Übersicht BlitzMax, BlitzMax NG Codearchiv & Module

Neue Antwort erstellen

 

funkheld

Betreff: Farberkennung , ein Sensor wird am Auto dargestellt.

BeitragDo, Aug 18, 2016 9:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Ein Sensor der pendelt wird am Auto dargestellt (Farberkennung)

Wenn der Sensor (Farbe anders als Weiß) ein Hindernis erkennt meldet er es. Man kann die Farbe selber festlegen.
Bei mir erkennt er alle Farben die anders sind als Weiß.
Man kann das Programm erweitern mit ausweichen , oder den Gegenstand abtransportieren usw.

Gruss

Mit den Tasten QWES kann das Auto gesteuert werden.
Habe ich wegen meine Behinderung gemacht.

Code: [AUSKLAPPEN]

SuperStrict

Graphics 600,400

global rot:int,addw:float, dw:float,xe:float,ye:float,px:float,py:float
global xs:float,ys:float,x1:float,y1:float,delta:float,entf:float
global test:int
global r:int,g:int,b:int,c:int

SetBlend solidblend
Global pic:TPixmap
Global timer:TTimer = CreateTimer(200)

Global bild1:TImage=CreateImage(600,400)
SetColor 34,255,27
DrawOval 100,200,150,50
SetColor 255,7,29
Drawrect 400,200,50,100
GrabImage bild1,0,0
cls

Global bild:TImage=CreateImage(70,40)
SetColor 0,0,255
DrawRect 0,0,70,40
GrabImage bild,0,0
cls

xs=100
ys=100
delta=2
dw=1.0
entf=50

Repeat
  cls

   Select True
      Case KeyDown(KEY_q)
         rot:-1
      if rot < 0 then rot=360
    Case KeyDown(KEY_e)
         rot:+1
      if rot > 360 then rot=0
      Case KeyDown(KEY_w)
        y1=Sin(rot)*delta
      x1=Cos(rot)*delta
      xs=xs+x1
      ys=ys+y1 
      Case KeyDown(KEY_s)
         y1=Sin(rot)*delta
      x1=Cos(rot)*delta
      xs=xs-x1
      ys=ys-y1
  End Select   

  addw=addw+dw
  if addw > 30.0 and  test=0 then
    dw=-1.0
    test=1
  endif
  if addw < -30.0 and  test=1 then
    dw=+1.0
    test=0
  endif
 
  SetColor 34,255,27
  DrawOval 100,200,150,50
  SetColor 255,7,29
  Drawrect 400,200,50,100

  SetImageHandle(bild,35,20)
  SetRotation rot
  setscale 0.8,0.9
  SetColor 255,255,255
  DrawImage bild,xs,ys

  setrotation 0
  setscale 1,1
  px = xs + (entf) * cos(rot-addw)
  py = ys + (entf) * sin(rot-addw)
  setcolor 255,255,255
  drawline xs,ys,px,py

  if py < 0 then py=0
  if py > 400 then py=400

  pic=LockImage(bild1)
  getpixel
  UnlockImage(bild1)

  SetRotation 0
  setscale 1.0,1.0
  setcolor 255,255,255
  DrawText "rot  = "+r,10,10
  DrawText "gruen= "+g,10,25
  DrawText "blau = "+b,10,40
  DrawText "drehen = "+rot,10,55

  if r > 0 or g > 0 or b > 0 then
    setcolor 255,255,255
    drawtext "kollision",10,70
  endif

  Flip
  WaitTimer(timer)
Until KeyHit (KEY_ESCAPE)

Function getpixel()
  c=ReadPixel(pic,px,py)
  r=(c&$ff0000)Shr 16
  g=(c&$ff00)Shr 8
  b=c&$ff
EndFunction
  • Zuletzt bearbeitet von funkheld am Do, Aug 18, 2016 13:34, insgesamt 8-mal bearbeitet

BladeRunner

Moderator

BeitragDo, Aug 18, 2016 12:22
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich möchte dich ein weiteres mal bitten deinen Code um eine aussagekräftige Beschreibung und Kommentare zu erweitern damit er den Richtlinien für Codes im Archiv entspricht.
Danke.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Mathias-Kwiatkowski

BeitragDo, Aug 18, 2016 12:39
Antworten mit Zitat
Benutzer-Profile anzeigen
ich möchte ja auch nich nörgeln, aber bissel einrücken usw. wäre cool.

meine kritik daran wäre, es ist alles nahezu globalisiert und die steuerung beim test ist grauenhaft (habs aber fix geändert)

ansonsten ist es eine farbcolision weiß nun nich obs so angebracht ist... z.b. ich habe ein panzer und steuere im haus muss das haus dann einfarbig sein? oder soll man dann ein temp als ebene 0 setzen das designte haus drüber zeichnen?
Skype: Anarchie1984
http://projektworks.de/maxbase/
Icq - Erneuert am 21.08.2017
Yahoo - Erneuert am 21.08.2017
 

funkheld

BeitragDo, Aug 18, 2016 13:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Das Programm kann jeder ändern wie er möchte und kann.

Da ich grauen Star am Auge habe und schlecht gucken kann habe ich die obere Reihe links genommen zur Steuerung weil ich die mit dem Gefühl am schnellsten erreichen kann.
Aber wahrscheinlich darf man als nicht Gesunder Mensch hier nicht Posten....

Du hast nicht richtig gelesen, ich weiß nicht ob das bei dir Absicht ist oder auch eine Krankheit?
Code: [AUSKLAPPEN]

if r > 0 or g > 0 or b > 0 then
    setcolor 255,255,255
    drawtext "kollision",10,70
 endif

Damit wird jede Farbe Farbe erkannt.

Und zum einrücken, wenn ich hier den Code reinsetze, wird es nicht so wiedergegeben wie ich es im Editor habe.

Gruss

Mathias-Kwiatkowski

BeitragDo, Aug 18, 2016 13:13
Antworten mit Zitat
Benutzer-Profile anzeigen
ja die frage war aber von mir anders gedacht,

warum eine farb kolision? weil autos bäume meist mehr als eine farbe besitzen oder? deswegen, .
Skype: Anarchie1984
http://projektworks.de/maxbase/
Icq - Erneuert am 21.08.2017
Yahoo - Erneuert am 21.08.2017
 

funkheld

BeitragDo, Aug 18, 2016 13:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Es hat etwas mit meinem Roboter zu tun, der auch die Farben erkennt und die Entfernung festhält.
Roboterbau und Programmieren ist auch mein weiteres Hobby als Pensionär.

Wenn ich den Roboter programmiere das er nur den roten Apfel erkennen soll mit den Sensor, der im Raum liegt, dann fährt er nur zu dem Roten Apfel. Es macht spaß wenn man so ein Spielzeug selber baut und programmiert.

So habe ich auch mein Programm entworfen.
Man kann es so umprogrammieren das er im Raum auch nur die Farbe(Rot) erkennen soll und dann dahin fahren soll und etwas damit macht , zb aufnehmen und abtransportieren zu eine bestimmten Stelle. Ist in 2D gar nicht so schwer.


Gruss

BladeRunner

Moderator

BeitragDo, Aug 18, 2016 13:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Aber wahrscheinlich darf man als nicht Gesunder Mensch hier nicht Posten....

Du hast nicht richtig gelesen, ich weiß nicht ob das bei dir Absicht ist oder auch eine Krankheit?

Und ich ermahne dich nun ein weiteres mal diese Vorwurfshaltung einzustellen.
Kritik ist kein Angriff sondern soll konstruktiv sein. Es beisst dich hier niemand, aber ich erwarte dass Du dich hier konstruktiv beteiligst und die Unterstellungen und Mutmaßungen im Schrank lässt.

Gemäß der Richtlinien fürs Codearchiv sollte der Code so aufgebaut sein dass man ihn ad hoc nutzen kann, da er selbsterklärend ist.
Welcher Teil macht was und warum?
Und: In sich abgeschlossene Programme sind hier meist eher schlecht aufgehoben, das Codedarchiv zielt mehr auf nützliche Routinen ab die man in eigene Programme einbinden kann.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

funkheld

BeitragDo, Aug 18, 2016 13:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Schau dir mal die Programme hier an die man hier sehen kann.
Zum Teil nicht brauchbar und in sich nicht schlüssig.

Ich weiß nicht, ob du jetzt erst wieder dran arbeitest und Mahnungen schreibst.
Ich finde es allmählich lächerlich und beleidigend was hier mit einem gemacht wird.

Schau dich mal um bei der deutschen BlitzMax-Scene.....wieviel hier in Deutschland schreiben bei BlitzMax und
sich unterhalten wollen. Irgendwie erkennst du nicht das dieses BlitzMax nur ein Spiel ist.

Un jetzt kannst wieder mit mir schimpfen....


Gruss

Midimaster

BeitragDo, Aug 18, 2016 13:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo Funkheld,

was ist denn heute mit Dir los? So kenn ich Dich gar nicht....

Jetzt fahrt mal beide wieder ein wenig runter... Die deutsche Community ist ziemlich klein geworden und Bladerunners Gebelle das Code-Archiv sauber zu halten, ist ziemlicher Unsinn bei maximal 2 neuen Beiträgen pro Jahr. Aber so isser nun mal, so kenne wir den seit Jahren und außerdem ist er der Chef hier... Er kommt ja kaum noch zum Bellen

Wäre schade, wenn es ihm gelingt, dich hier zu vertreiben. mit Dir ist nämlich endlich mal wieder was los hier. Also seid wieder nett zueinander, wir sind einfach zuwenige um uns gegenseitig den Spaß am Forum zu nehmen.

Eines kann ich Dir versichern: BlitzMax ist ernsthaft nutzbar. Tipp: sieh dir mal die englische Community an. Etliche Code-Beiträge sind deshalb nicht (mehr) lauffähig, weil sie auf über 10 Jahre alten Versionen von BlitzMax oder Windows entstanden sind. Lehrreich bleiben sie allemal. Vor allem, wenn sie gut kommentiert waren.
Gewinner des BCC #53 mit "Gitarrist vs Fussballer" http://www.midimaster.de/downl...ssball.exe
  • Zuletzt bearbeitet von Midimaster am Do, Aug 18, 2016 14:05, insgesamt einmal bearbeitet

Mathias-Kwiatkowski

BeitragDo, Aug 18, 2016 14:00
Antworten mit Zitat
Benutzer-Profile anzeigen
mir platzt einmälich die halzschlaader
hast du dich hier ernstahft nur angemeldet um zu provozieren? und machst du es auch im pb forum, das du dich da nimmer sehen lassen kannst deswegen also auf bm umsteigen wolltest?

du hast hilfe angeboten bekommen mehrfach. mehrfach von mir! ich bin solange in diesem forum habe sowas noch nicht erlebt.

wenn du die codes und die hilfe hier für unwichtig bzw für nicht brauchbar hälst schau sie dir nich an!

habe mich nun wirklich lange zurück gehalten aber solangsam regt es mich pers. nur noch auf wenn ich diese eingaben von dir hier lese,

ps. darum habe ich die hilfestellung dir gegenüber eingestellt. und die kritik die ich geäussert habe
war nur gut gemeint. wenn man eine seh behinderung hat ist es im übrigen wurst ob man q oder a drückt.

und dein kollisions bsp wollte ich nich runtermachen ich fragte dich nur wie du dir das vorstellt eine kollision via farbe abzufragen, da die meisten bilder ehr bunt sind und nicht EINFARBIG.

so nu ma luft gemacht sorry
Skype: Anarchie1984
http://projektworks.de/maxbase/
Icq - Erneuert am 21.08.2017
Yahoo - Erneuert am 21.08.2017

BladeRunner

Moderator

BeitragDo, Aug 18, 2016 14:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Mein lieber Funkheld,
Du bist hier Gast in meinem Hause. Ich lege normalerweise keinen Wert drauf das rauszukehren, aber dieses mal stelle ich das mal deutlich klar.
In diesem Portal gibt es Regeln. Es sind nicht viele, aber es gibt sie.
Neben dem "überlege wo was hingehört bevor Du schreibst" gehört vorallem eines dazu: Sei Höflich und behandle andere so wie Du selbst behandelt werden möchtest.
Wenn jemand sich daran nicht hält, werde ich ihn darauf aufmerksam machen. Wenn er es wiederholt tut, werde ich ihm die Tür weisen, genau wie ich es zu Hause auch täte.
Dir wurde hier auf deine Fragen geantwortet und du wurdest von mir wertungsfrei auf Punkte hingewiesen bei denen du noch nachbessern kannst.
Ich habe dich nicht persönlich angegriffen und werde das auch weiter nicht tun, aber ich lasse mir hier sicher nicht vorschreiben wie ich hier meine moderative Tätigkeit ausübe.

Kurz zusammengefasst:
Benimm dich, bleib höflich und mutmaße nicht über das Private anderer.
Halte dich an die in den jeweiligen Subforen verankerten Vorgaben.

Dann kannst Du hier eine schöne Zeit ("Spass") haben.

Wenn Du das nicht kannst fühl dich frei woanders zu spielen.

Und diese Moderationslinie, mein lieber midimaster, gilt nicht nur wenn Hochbetrieb herrscht. Höflichkeit ist hier immer gefragt, egal ob einer schreibt oder Tausende.

Also alle mal Bremse treten. Danke.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Midimaster

BeitragDo, Aug 18, 2016 15:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Bei der Anmahung von Höflichkeit stehe ich wie alle hier 100% hinter Dir! Funkheld muss hier umsichtiger schreiben. Wäre schade, wenn er nicht die Kurve kriegt... Als Hardware-Bastler wäre er schon eine Bereicherung fürs Forum.
Gewinner des BCC #53 mit "Gitarrist vs Fussballer" http://www.midimaster.de/downl...ssball.exe
 

funkheld

BeitragMo, Sep 05, 2016 15:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:

und dein kollisions bsp wollte ich nich runtermachen ich fragte dich nur wie du dir das vorstellt eine kollision via farbe abzufragen, da die meisten bilder ehr bunt sind und nicht EINFARBIG.


Ganz einfach und puppig.... Farbe > rgb 0,0,0 und es funktioniert und du kannst das ganze Bild erfassen in seinen Farben. Ist nur eine Abfrage. Und es funktioniert bei mir , nebenbei noch sehr schnell mit BlitzMax die Auswertung. Und wem das nicht reicht, kann ganz einfach C mit MingW einsetzen oder ASM in BlitzMax.

GRuss
  • Zuletzt bearbeitet von funkheld am Mo, Sep 05, 2016 16:05, insgesamt einmal bearbeitet

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Codearchiv & Module

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group