2010-06-15 12 views
5

मेरे मैक लैपटॉप में 1,024,000 पिक्सल हैं। मेरे डिस्प्ले को पूरी तरह से काला करने के लिए सबसे आसान तरीका क्या है और मेरे दिल की खुशी के लिए पिक्सेल को घुमाने के लिए छोटे प्रोग्राम लिखने के साथ पागल हो जाएं?सुंदर पिक्सेल-स्तर चित्र चित्रकारी, प्रोग्रामिक रूप से

इसे और अधिक ठोस बनाने के लिए, मैं स्क्रीन पर कुछ और नहीं के साथ, पिक्सेल स्तर पर, सिएरपिंस्की त्रिकोण को आकर्षित करने के लिए Chaos Game को कार्यान्वित करना चाहता था। ऐसा करने के तरीके क्या हैं?

+2

मुझे आवंटन पसंद है। –

+2

बिल्कुल। आवंटन अद्भुत हैं। (एक तरफ के रूप में, आवंटन का जवाब देने के उत्तर भी स्वीकार्य हैं!) अद्भुत शीर्षक के लिए – dreeves

+0

+1। –

उत्तर

2

में Create Quartz निश्चित रूप से एक स्क्रीन सेवर एक आकस्मिक लाभ समाधान हो सकता है?

एक दृष्टिकोण स्क्रीन सेवर मॉड्यूल के लिए नमूना कोड डाउनलोड करना होगा और फिर अपने स्क्रीन सेवर के लिए टेम्पलेट के रूप में उपयोग करना होगा। इस तरह आपको वास्तविक ड्राइंग कोड से काफी कुछ लिखना नहीं है, और आपको बूट करने के लिए अपना स्वयं का कस्टम स्क्रीन सेवर मॉड्यूल मिलता है।

+1

एक्सकोड में एक स्क्रीन सेवर टेम्पलेट है जो मूल बातें का ख्याल रखता है - बस 'एनिमेटऑनफ्रेम' में ड्राइंग जोड़ें। स्क्रीन सेवर डीबग करने के लिए दर्द का एक प्रकार है, हालांकि, क्योंकि वे किसी अन्य एप्लिकेशन की जगह में लोड मॉड्यूल के रूप में चलते हैं। और कोको में पिक्सेल-स्तरीय ड्राइंग के आसपास भी थोड़ा सा मिश्रण होता है। – walkytalky

+0

स्मार्ट सुझाव! – dreeves

+0

सामान्य एप्लिकेशन बनाना आसान हो सकता है जो पूर्ण-स्क्रीन चलाता है (कई गेम की तरह)। इस तरह आप आसानी से डीबग कर सकते हैं और यदि आप चाहें तो इंटरएक्टिविटी भी जोड़ सकते हैं। –

1

मैं आप सी या सी ++ का उपयोग कर रहे हैं, आप SDL के साथ यह सामान कर सकते हैं। यह एक एकल खिड़की या पूर्ण स्क्रीन (प्लस कीबोर्ड, माउस, और साउंडकार्ड) के पिक्सल तक निम्न स्तर तक पहुंच की अनुमति देता है और अधिकांश विंडोज़, ओएसएक्स और लिनक्स पर काम करता है।

http://lazyfoo.net/SDL_tutorials/index.php पर इस लाइब्रेरी का उपयोग करने के तरीके पर कुछ उत्कृष्ट ट्यूटोरियल हैं। मुझे लगता है कि आप पहले कुछ के बाद ट्यूटोरियल # 31 चाहते हैं।

1

जाने का एक अच्छा तरीका है GLUT, (थोड़ा) दोस्ताना मल्टीप्लाफ्फ़्ट रैपर ओपनजीएल को। यहाँ कुछ अंक ज़ुल्फ़ करने के लिए कुछ कोड है:

#include <GL/glut.h> 

void 
reshape(int w, int h) 
{ 
    glViewport(0, 0, w, h); 
    glMatrixMode(GL_PROJECTION); 
    glLoadIdentity(); 
    glOrtho(0, w, 0, h, -1, 1); 
} 

void 
display(void) 
{ 
    glClear(GL_COLOR_BUFFER_BIT); 
    glBegin(GL_POINTS); 
    for (int i = 0; i<399; ++i) 
    { 
     glVertex2i(i, (i*i)%399); 
    } 
    glEnd(); 
    glFlush(); 
} 

int 
main(int argc, char **argv) 
{ 
    glutInit(&argc, argv); 
    glutCreateWindow("some points"); 
    glutDisplayFunc(display); 
    glutReshapeFunc(reshape); 
    glutMainLoop(); 
    return 0; 
} 

सी है कि ++ लेकिन यह अजगर और कई अन्य भाषाओं में लगभग समान होना चाहिए।

संबंधित मुद्दे