myGully.com Boerse.SH - BOERSE.AM - BOERSE.IO - BOERSE.IM Boerse.BZ .TO Nachfolger
Zurück   myGully.com > Computer & Technik > Programmierung
Seite neu laden

C# - Kreis Zeichnen - Consoleapplication

Willkommen

myGully

Links

Forum

 
Antwort
Themen-Optionen Ansicht
Ungelesen 20.09.10, 08:21   #1
cucuuu
Anfänger
 
Registriert seit: Jul 2010
Beiträge: 14
Bedankt: 4
cucuuu ist noch neu hier! | 0 Respekt Punkte
Standard C# - Kreis Zeichnen - Consoleapplication

Guten Tag (Morgen) Gullianer ,
ich möchte einen Kreis bei C# zeichnen aber habe jetzt keine Ahnung wie.
Ich bin neu bei C# aber mein beschissener lehrer besteht darauf gleich mal einfach so C# zu benutzen und uns ne aufgabe zu geben die keiner braucht. = (

Also , ich soll Console appplication benutzen und einen Kreis zeichnen der verpixelt ist.

Sorry bin zu dumm dafür =(

Danke schonmal im Vorraus
cucuuu ist offline   Mit Zitat antworten
Ungelesen 20.09.10, 11:26   #2
ThePinsel
Freizeit-Troll :>
 
Registriert seit: May 2009
Beiträge: 2.269
Bedankt: 611
ThePinsel ist noch neu hier! | 0 Respekt Punkte
Standard

Und du denkst, dass du ohne dir selbst auch nur ein bisschen Gedanken zu machen, dir jemand hier fertigen Code postet? Wenn das einer macht, wird der von mir verwarnt.
Hausaufgaben sollte man schon selber machen. Und wenn man dazu mal ein wenig nachdenken muss.
__________________
[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] | [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] | [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
ThePinsel ist offline   Mit Zitat antworten
Ungelesen 20.09.10, 18:35   #3
urga
Mitglied
 
Benutzerbild von urga
 
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 453
Bedankt: 137
urga ist noch neu hier! | 0 Respekt Punkte
Standard

da haste deinen kreis. der ist zwar ziemlich klein, aber immerhin
Code:
Console.WriteLine(".");
__________________
entropie erfordert keine wartung
urga ist offline   Mit Zitat antworten
Ungelesen 20.09.10, 18:46   #4
cucuuu
Anfänger
 
Registriert seit: Jul 2010
Beiträge: 14
Bedankt: 4
cucuuu ist noch neu hier! | 0 Respekt Punkte
Standard

ähem , - ja ich möchte nur nebenbei erwähnen , dass ich einen komischen lehrer habe (der einen gleich anbrüllt oO) und dass keiner aus meiner klasse es bisher hinbekommen hat . Wenn dem so wäre hätte ich nicht den umstand gemacht und hier was gepostet =)
und diesen thread habe ich während des unterrichts gepostet .
Wie auch immer - könnte mir eben wenigsten jemand einen Ansatz geben bzw - erklären wie man bei einer Consoleapplication in c# einen Punkt(x,y) mit '*' kennzeichnet ?

habe ja vorher mit processing gearbeitet und von daher ist der umstieg für mich etwas schwer geraten 8E

und ja- ich habe auch gegoogled - komme aber nicht zu einer vernünftigen antwort , da diese nicht zur consoleapplication passt (oder wie auch immer ..)

@ urga - woah jetzt kann ich schon mal paar '*'s erstellen :top: thanks ;D

Wichtiges - ich bin auf einem mathematikgymnasium mit besonderem naturwissentschaftlichen profil - d.h. ich habe auch was im köpfchen ;D
cucuuu ist offline   Mit Zitat antworten
Ungelesen 20.09.10, 18:58   #5
urga
Mitglied
 
Benutzerbild von urga
 
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 453
Bedankt: 137
urga ist noch neu hier! | 0 Respekt Punkte
Standard

[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]

[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] (klick auf c#, und dann auf example...)
__________________
entropie erfordert keine wartung
urga ist offline   Mit Zitat antworten
Ungelesen 20.09.10, 20:02   #6
cucuuu
Anfänger
 
Registriert seit: Jul 2010
Beiträge: 14
Bedankt: 4
cucuuu ist noch neu hier! | 0 Respekt Punkte
Standard

Danke =) , ich versuche mal das beste daraus zu machen =)
cucuuu ist offline   Mit Zitat antworten
Ungelesen 20.09.10, 20:04   #7
kramido
Erfahrener Newbie
 
Registriert seit: Apr 2010
Beiträge: 172
Bedankt: 31
kramido ist noch neu hier! | 0 Respekt Punkte
Standard

Zum Zeichnen von Kreisen auf Rastergrafiken (auch ASCII-Art) existieren diverse Algorithmen. Der erste war wohl der Bresenham für Kreise:
[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]

Anbei findet sich ein Beispiel für eine Implementierung in C.Der Unterschied bei dir besteht darin, dass du keine Pixel setzen musst, sondern ein Zeichen für einen Kreisaußenpunkt (z.B. eine Raute oder einen Punkt) setzen sollst.

Achte darauf, wieviel Platz du auf der Konsole hast. Radien über 20 sollten ein Problem werden...

Kannst ja mal deinen fertigen Code hier posten.

Grüße,
kramido
kramido ist offline   Mit Zitat antworten
Ungelesen 24.09.10, 21:35   #8
xparet0209
Anfänger
 
Registriert seit: Oct 2009
Beiträge: 11
Bedankt: 0
xparet0209 ist noch neu hier! | 0 Respekt Punkte
Standard

also ich denke allg zur darstellung solltest du keinen punkt verwenden um die peripheri darzustellen
sondern ein dickes schwarzes viereck (code steht meistens hinten in der formelsammlung), da du in c# mit der console nur in den zeilen hin und her springen kannst, jedoch kannst du keine pixel direkt beeinflussen - daher wird wahrscheinlich auch kein bresenham algorithmus notwendig sein
guck dir diese kreisfunktion an (wiki):



jetzt kannst du halt alle x durchgehen in einer schleife, dabei im intervall von -1 bis 1
und dabei mit deinem gewünschten radius multiplizieren
die koordinaten müssen natürlich noch gerundet werden

dann an der jeweiligen stelle das zeichen ausgeben
im folgendem artikel steht wie du die cursorposition in der konsole verändern kannst
[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]

hättest einfach nur "c# console set cursor position" google müssen

du bist nicht zufällig an der h2o in berlin?
xparet0209 ist offline   Mit Zitat antworten
Ungelesen 27.09.10, 21:49   #9
ro88ro
Anfänger
 
Benutzerbild von ro88ro
 
Registriert seit: Jul 2010
Beiträge: 29
Bedankt: 1
ro88ro ist noch neu hier! | 0 Respekt Punkte
Standard

Zitat:
Zitat von urga Beitrag anzeigen
da haste deinen kreis. der ist zwar ziemlich klein, aber immerhin
Code:
Console.WriteLine(".");
das geht ohne system.... beeindruckend
ich mach den mal was grösser:
Code:
Console.WriteLine("ö");
mit 2 punkten oben drauf!

kann mir mal eben jemand ne flasche bier coden, aber offen bitte
__________________
------------------------------
load: "m:bier" ,8,1
ro88ro ist offline   Mit Zitat antworten
Ungelesen 27.09.10, 22:00   #10
ro88ro
Anfänger
 
Benutzerbild von ro88ro
 
Registriert seit: Jul 2010
Beiträge: 29
Bedankt: 1
ro88ro ist noch neu hier! | 0 Respekt Punkte
Standard

mist hasste die property feuerzeug oder 17erschluessel vergessen, naja anfängerfehler

mal mit filemaker s***** probieren
Code:
gehezudatensatz:(hello world::kioskmode ) 
neuerdatensatz(vorrat::bier +5) 
schreibe änderungen()
//TODO:developers: we have to improve the latancy time here... 
//kioskmode takes more than 5 minutes!! try better
//FROM:<QA> TIMESTAMP "1.1.1970  00:00:00"
gehezudatensatz (Home::Sofa)
holes*****parameter(1,$$oeffner)
s*****ausführen("oeffnen",vorrat:bier)
fedlwertsetzen(vorrat::bier-1) 
s*****ausführen("trinken",vorrat:bier)
s*****ausführen("imbett",user:id)
gotolayout(""buy FM","Only 3.500$") //ad by <QA> dev forgot again ads
program beenden
...mh compile error:runtime error: current Table "user:brain" divided by zero
immerhin hatte ich fast schon einen öffner...
__________________
------------------------------
load: "m:bier" ,8,1
ro88ro ist offline   Mit Zitat antworten
Antwort


Forumregeln
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren

BB code is An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:26 Uhr.


Sitemap

().