رفتن به مطلب
جامعهٔ برنامه‌نویسان مُدرن ایران

جستجو در تالارهای گفتگو

در حال نمایش نتایج برای برچسب های 'sfml'.



تنظیمات بیشتر جستجو

  • جستجو بر اساس برچسب

    برچسب ها را با , از یکدیگر جدا نمایید.
  • جستجو بر اساس نویسنده

نوع محتوا


وبلاگ‌ها

چیزی برای نمایش وجود ندارد

چیزی برای نمایش وجود ندارد

تالارهای گفتگو

  • انجمن‌های آی او استریم
    • اخبار و اعلامیه‌های سایت
    • اسناد و قوانین مرجع
    • رویداد‌ها و جلسات
    • معرفی محصولات نوشته شده‌ بومی
    • مرکز نظرسنجی جامعه‌ی برنامه‌نویسان
    • مقالات و اسناد مشاوره‌ای
    • مرکز چالش برانگیز برنامه‌نویسان
    • رمز‌های موفقیت
    • ابزار‌ها و نرم‌افزارهای کاربردی برنامه‌نویسان حرفه‌ای
  • استارتاپی و کسب‌و‌کار
    • استارتاپ‌ها
    • سرمایه گذاری
    • شتاب دهنده‌ها
    • پارک‌های علم و فناوری و مراکز رشد
    • مصاحبه با استارت‌آپ‌ها
    • قوانین حقوقی
    • داستان‌های موفقیت
    • کارآفرینان و متخصصین
    • مشاوره اجرای کسب‌وکار
    • اخبار حوزه‌ی استارتا‌پی
    • آگهی‌های استخدامی
  • زبان‌های برنامه نویسی
    • برنامه نویسی در C و ‏++C
    • برنامه نویسی با Java
    • برنامه نویسی با JavaScript
    • برنامه نویسی با Go
    • برنامه نویسی با Python
    • برنامه نویسی با Delphi
    • برنامه نویسی با Ruby
    • برنامه نویسی با VB6
  • طراحی و توسعه وب
    • برنامه نویسی در PHP
    • برنامه نویسی با Node.JS
    • برنامه نویسی با Django
  • طراحی و توسعه وب اپلیکیشن‌ها
    • طراحی و توسعه در Angular
    • طراحی و توسعه در React.JS
    • طراحی و توسعه در Vue.JS
  • طراحی و توسعه موبایل و اِمبِد‌ها و تلوزیون‌ها
    • برنامه نویسی تحت محصولات اپل
    • برنامه نویسی تحت محصولات گوگل
    • طراحی و توسعه تحت محصولات دیگر
  • برنامه‌نویسی سطح پایین و سیستم عامل‌ها
    • سیستم عامل‌های آزاد
    • سیستم عامل‌های تجاری
    • مباحث آموزشی مرتبط با سیستم‌عامل
  • شبکه و اینترنت
  • بانک‌های اطلاعاتی
  • برنامه نویسی تحت محصولات اپل
  • برنامه نویسی تحت محصولات مایکروسافت
  • طراحی و توسعه تجربه کاربری (UX) و رابط کاربری (UI)
  • درخواست انجام پروژه (ویژه)
  • سوالات و مباحث عامیانه
  • سطل آشغال

Product Groups

  • کتاب‌ها و مقالات آموزشی

دسته ها

  • علمی
  • استارتاپی
  • برنامه‌نویسی
    • زبان‌های برنامه نویسی
    • معماری‌ها
  • کامپایلر و مفسر
  • محیط‌های توسعه
  • طراحی و توسعه‌ی وب
  • مجوز‌های نرم‌افزاری
  • فناوری‌ها
    • پردازش تصویر
    • اینترنت اشیاء
    • پردازش ابری (Cloud Computing)
    • چند سکویی (Cross-Platform)
    • بیگ دیتا (Big Data)
    • هوش مصنوعی (AI)
    • سخت افزار
    • نرم‌افزار و اپلیکیشن
    • اینترنت و شبکه
    • رمزنگاری
    • امبد‌ها (Embedded)
  • طراحی
    • تجربه کاربری
    • رابط کاربری

دسته ها

  • عمومی
  • گرافیکی
  • شبکه و ارتباطات

دسته ها

  • کامپایلر‌ها
  • محیط‌های توسعه
  • کتابخانه‌ها
  • ماژول‌ها و پلاگین‌ها
  • محصولات بومی
  • کتاب‌ها و مقالات
  • زبان‌ها و ابزار‌ها
  • طراحی و گرافیک

جستجو در ...

نمایش نتایجی که شامل ...


تاریخ ایجاد

  • شروع

    پایان


آخرین بروزرسانی

  • شروع

    پایان


فیلتر بر اساس تعداد ...

تاریخ عضویت

  • شروع

    پایان


گروه


درباره من


شماره تلفن همراه


شناسه گیت‌هاب


شناسه لینکدین


شناسه پیام رسان


شهر


آدرس پستی

4 نتیجه پیدا شد

  1. کامبیز اسدزاده

    در کتابخانه‌ی SFML کلاس Http این امکان را فراهم می‌کند تا به راحتی بتوانید تحت روش‌های Post، Get و Head درخواست‌های مورد نظر را دریافت و ارسال کنید. توجه داشته باشید این کتابخانه تنها از مباحث ابتدائی پروتکل Http پشتیبانی می‌کند. برای دسترسی و استفاده از این ویژگی کافی است سرآیند زیر را وارد کنید: #include <SFML/Network.hpp> سپس با فراخوانی فضای نام به صورت زیر، از کلاس مربوطه یک نمونه خواهیم ساخت: sf::Http http; به عنوان مثال کد زیر جهت آماده سازی برای ارسال به سمت سرور کافی است: #include <SFML/Network.hpp> sf::Http http; http.setHost("http://www.iostream.ir/"); با توجه به نیاز‌های مربوط به این مبحث، ارسال مقادیر به یک صفحه و آدرس اینترنتی توسط Request و Response صورت می‌گیرد که جهت دسترسی به این ویژگی‌ها کافی است از کلاس‌ مربوطه به صورت زیر نمونه گرفته شود. sf::Http::Request request; request.setMethod(sf::Http::Request::Post); request.setUri("/page.html"); request.setHttpVersion(1, 1); // HTTP 1.1 request.setField("From", "me"); request.setField("Content-Type", "application/x-www-form-urlencoded"); request.setBody("para1=value1&param2=value2"); sf::Http::Response response = http.sendRequest(request); در کد فوق، روش درخواست از نوع Post و یا Get مشخص می‌شود که از متد setMethod جهت اعمال آن استفاده شده است. در ادامه مشخصه‌ی setUri صفحه و یا‌آدرسی را که قرار است اطلاعات به آن ارسال یا دریافت شود را مشخص می‌کند. نسخه‌ی پروتکل http با مشخصه‌ی setHttpVersion با مقادیر صحیح مقدار دهی می‌شود که در این مثال مقدار ۱ به عنوان پشتیبانی از پروتکل نسخه‌ی Http 1.1 تعیین شده است. با توجه به ماهیت روش Post مقادیری که برای ارسال نیاز است را باید ارسال کنید، برخی از اطلاعات ارسالی مانند Content-Type و غیره توسط مشخصه‌ی setField مشخص می‌شود و همچنین مشخصه‌ی setBody پارامتر‌ها (ورودی‌هایی) که از طرف کاربر ارسال می‌شود را فراهم می‌کند. در نهایت کلاس Response جهت دریافت و مدیریت داده‌های ارسالی از سمت سرور را مدیریت می‌کند که برای دسترسی و چاپ اطلاعات تحت آن به صورت زیر خواهد بود: sf::Http::Response response = http.sendRequest(request); std::cout << "status: " << response.getStatus() << std::endl; std::cout << "HTTP version: " << response.getMajorHttpVersion() << "." << response.getMinorHttpVersion() << std::endl; std::cout << "Content-Type header:" << response.getField("Content-Type") << std::endl; std::cout << "body: " << response.getBody() << std::endl; مثال فوق وضعیت، نسخه‌ی مرتبط با پروتکل مربوطه، مقدار Content-Type و همچنین اطلاعات ارسال شده در مشخصه‌ی body را چاپ خواهد کرد. در ادامه مثال مشخصی را برای ارسال یک نظر را آورده‌ایم که به صورت زیر خواهد بود: #include <SFML/Network.hpp> #include <sstream> void sendComment(const std::string &message, const std::string &username) { // Prepare the request sf::Http::Request request("/comment.php", sf::Http::Request::Post); // Encode the parameters in the request body std::ostringstream stream; stream << "username=" << username << "&message=" << score; request.setBody(stream.str()); // Send the request sf::Http http("http://www.iostream.ir/"); sf::Http::Response response = http.sendRequest(request); // Check the status if (response.getStatus() == sf::Http::Response::Ok) { // Check the contents of the response std::cout << response.getBody() << std::endl; } else { std::cout << "Request failed" << std::endl; } } توجه داشته باشید که جهت بررسی وضعیت ارسالی از نمونه‌ی response متد getStatus را می‌توان با شمارنده‌های موجود در کلاس Response مورد ارزیابی قرار داد. در نهایت در سمت سرور کد زیر می‌تواند مقادیر ارسال شده را دریافت و پاسخ دهد: <?php $username = $_POST['username']; $message = $_POST['message']; if (write_to_database($username, $message)) { echo "Your comment has been added!"; } else { echo "failed to write your message to database..."; } ?> نکته: مثال‌های فوق صرفاً برای آشنایی با نحوه‌ی استفاده از ویژگی مربوطه در این کتابخانه است، بنابراین بسیار ساده و فاقد کد‌های امنیتی و سفارشی است.
  2. کامبیز اسدزاده

    با توجه به موضوع قبل بعد از نصب و راه اندازی کتابخانه برای اینکه ساده ترین مثال ممکن را توضیح دهیم در پروژه‌ی خود در فایل main.cpp کد زیر را وارد کنید. #include <iostream> #include <SFML/Window.hpp> int main() { sf::Window window(sf::VideoMode(640, 480), "Hello world!"); std::cout << "Window is created!" << std::endl; return 0; } در کتابخانه‌ی SFML تمامی کلاس‌ها در هدر‌های مخصوص خود قرار دارند، همانند استاندارد تمامی کتابهانه‌های سی‌پلاس‌پلاس ? بنابراین جهت نمایش یک پنجره ساده با ابعاد مشخص ما نیاز به هدر Window.hpp خواهیم داشت که در کُد بالا وارد شده است. از کلاس فوق نمونه گیری کرده و سپس تحت مشخصه‌ی VideoMode ابعاد و عنوان پنجره‌ی خود را وارد می‌کنیم. برنامه را اجرا کنید در صورتی که کتابخانه‌ی شما مشکلی نداشته باشد پنجره‌ی شما با مشخصات وارد شده نمایان خواهد شد. دقت کنید که برای ثابت نگه داشتن در یک بازه‌ی زمانی بهتر است از کد دستوری زیر برای نگه‌داری پنجره در زمان اجرا استفاده شود که هیچ قدرت قابل توجهی را از جانب پردازنده نمی‌طلبد: sf::sleep(sf::seconds(3)); کُد بهینه شده با توجه به ایجاد رخداد کلیدی برای پایان دادن برنامه به صورت زیر خواهد بود: #include <SFML/Window.hpp> int main() { sf::Window window(sf::VideoMode(640, 480), "Hello world!"); while (window.isOpen()) { sf::Event event; while (window.pollEvent(event)) { if (event.type == sf::Event::KeyPressed) window.close(); } } return 0; } در داخل حلقه‌ی while در صورتی که رخداد فشرده شدن کلیدی از طرف دستگاه ورودی مانند صفحه کلید رُخ دهد، پنجره بسته خواهد شد. کُد مربوطه را اجرا کنید، در صورتی که مشکلی وجود نداشته باشد پنجره ساخته شده شما نمایان و با فشرده شدن کلیدی از صفحه کلید بسته خواهد شد.? در ادامه آموزش‌های لازم در بخش مربوطه ارائه خواهد شد.
  3. کامبیز اسدزاده

    کتابخانه‌ی SFML به عنوان یک واسط کامپوننت‌های مفیدی را برای سیستم فراهم می‌کند که جهت توسعه برنامه‌های گرافیکی و بازی سازی بسیار مفید است. ماژول‌های این کتابخانه با عناوین System, Window, Graphics, Audio و Network به صورت چند-سکویی ارائه شده‌اند. جهت دریافت نسخه‌‌ی مورد نظر از این بخش اقدام کنید. بعد از دریافت در یکی از محیط‌های توسعه پروژه‌ای را ایجاد و مسیر‌های مرتبط با include و lib به پروژه‌ی خود معرفی کنید. به عنوان مثال در محیط Qt Creator به صورت زیر خواهد بود: win32: LIBS += -L$$PWD/../../YourPath/SFML-2.5.0/lib/ sfml-graphics.lib sfml-window-s.lib sfml-window.lib sfml-system-s.lib sfml-system.lib INCLUDEPATH += $$PWD/../../YourPath/SFML-2.5.0/include DEPENDPATH += $$PWD/../../YourPath/SFML-2.5.0/include توجه داشته باشید برای معرفی ماژول‌های ذکر شده می بایست آن‌ها را در بخش lib معرفی کنید. آموزش نصب و راه اندازی کتابخانه در ++C
  4. کامبیز اسدزاده

    کتابخانه‌ی SFML

    نگارش 2.5.۱

    15 دریافت

    کتابخانه‌ی SFML به عنوان یک واسط کامپوننت‌های مفیدی را برای سیستم فراهم می‌کند که جهت توسعه برنامه‌های گرافیکی و بازی سازی بسیار مفید است. ماژول‌های این کتابخانه با عناوین System, Window, Graphics, Audio و Network به صورت چند-سکویی ارائه شده‌اند. این کتابخانه برای زبان‌های C/C++/C#/Python و Java مورد استفاده قرار می‌گیرد. جهت یادگیری سریع این کتابخانه در مرجع می‌توانید به بخش اختصاصی SFML مراجعه کنید.

    رایگان

×
×
  • جدید...