Interactive Computer Graphics

بواسطة: Coursera

Overview

Computer graphics can be a powerful tool for supporting visual problem solving, and interactivity plays a central role in harnessing the users' creativity. This course will introduce various interactive tools developed in computer graphics research field with their design rationales and algorithms. Examples include enhancements to graphical user interfaces, authoring tools for 2D drawings and 3D animations, and interactive computer-aided design systems. Rich live demonstrations and course assignments will give you insights and skills to design and implement such tools for your own problems.

Syllabus

  • Graphical User Interfaces
    • Graphical user interfaces turn computer control problem into visual problem solving. The lectures of this module introduce five attempts to enhance current GUI operations such as scrolling interfaces, management of desktop icons, pointing on a large display, digital inking, and vocal interaction.
  • 2D Drawings and Animations
    • In this module we will dive deep into the world of 2D. We will discuss techniques for authoring 2D drawings and animations. Specifically, we will introduce interactive diagram beautification, pen-and-ink texture synthesis, shape manipulation, and dynamic illustrations. We hope you will witness how interactive software can change burdensome drawing work into full of fun!
  • 3D Geometric Modeling
    • In this module, we rise up from 2D plane to 3D space, and discuss 3D geometric modeling methods. Topics introduced are; suggestive interface for architectural models, a sketch-based modeling system for freeform shapes, a curve-based shape control method, a flower modeling system, and volumetric texture. You will see how 3D objects can be easily and quickly modeled by specially-designed 2D user interfaces!
  • Deformation and Animation
    • Starting from this module, we are shifting our attention towards simulating/crafting real objects and movements, which usually require intricate systems to deal with. As for this module, we will introduce clothing manipulation techniques, layer operations for stacked deformable objects, spatial key framing for character animations, procedural deformation, and human motion visualization using stick figures. You will discover how deformation and animation techniques help visually reproduce complex objects and motions.
  • Fabrication
    • In this module, we will discuss systems for supporting personal fabrication. In particular, we will introduce systems for designing plush toys, beadworks, chairs, and softly folded objects. In addition, interactive packing method is presented.
  • Computer-aided Design
    • Nowadays, computers are indispensable for designing products; computers mediate the interaction between designers and products. But in most cases, designing and testing processes are separated, so that designers will not foresee the consequences of their design in real time.
      In this module, we will discuss computer-aided design supported by simultaneous physical simulation. The works introduced are: systems for designing cantilever, musical instruments, garments, furniture, and gliders. You will see how real-time feedback helps designers improve the output products!
  • Real-world Interaction
    • Computer-operated appliances, such as robotic cleaners, are gradually spreading to general households in recent years. These emerging technologies have opened the door to the new research area, i.e. research on the interactions between ordinary people and robots. In this module, we will discuss interactive techniques and systems for real world interaction. Topics include: a command card interface for robot control, style-by-demonstration for robot behavior design, an actuated puppet device for character posing, a painting interface for robotic lights, and a fur display.

Taught by

Takeo Igarashi

Interactive Computer Graphics
الذهاب الي الدورة

Interactive Computer Graphics

بواسطة: Coursera

  • Coursera
  • مجانية
  • الإنجليزية
  • متاح شهادة
  • متاح في أي وقت
  • intermediate
  • Arabic, French, Portuguese, Chinese, Italian, German, Russian, English, Spanish, Japanese, Thai, Indonesian, Kazakh, Hindi, Swedish, Korean, Greek, Ukrainian, Polish, Dutch, Turkish
8.1.2PHP Version876msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (567ms)
    • Application (306ms)
    • 1 x Booting (64.81%)
      567.45ms
      1 x Application (34.93%)
      305.86ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      7 statements were executed7.62ms
      • select * from `courses` where `slug_ar` = 'interactive-computer-graphics' limit 1
        5.83ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. interactive-computer-graphics
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-07-05 15:03:52' where `id` = 133
        470μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-07-05 15:03:52
        • 1. 133
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (25)
        240μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        190μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `institutions` where `institutions`.`id` in (33) and `institutions`.`deleted_at` is null
        320μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (2) and `providers`.`deleted_at` is null
        300μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 133 limit 1
        270μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 133
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Institution
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        adBlR0ngaEdaAAZiI0xkE1FfydjzV5FJYlrekf3u
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/intera...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/interactive-computer-graphics
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "216.73.216.187" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "x-forwarded-for" => array:1 [ 0 => "216.73.216.187" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cf-ray" => array:1 [ 0 => "95a7c0647bbb39d7-YYZ" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "priority" => array:1 [ 0 => "u=0, i" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "216.73.216.187" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_X_FORWARDED_FOR" => "216.73.216.187" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_CF_RAY" => "95a7c0647bbb39d7-YYZ" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "56912" "REMOTE_ADDR" => "172.69.214.45" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/interactive-computer-graphics" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1751727831.9991 "REQUEST_TIME" => 1751727831 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Sat, 05 Jul 2025 15:03:52 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IjR4VGR6SjExbytyWVRjQkN1TDBtSXc9PSIsInZhbHVlIjoiTTYra2xLLzJZZU1LVG5wbjM2NDkvNDBiejVoY0VUS1cvQk1MTHdoZXZ6YTJZSFhsOXpkbFUrejVRVkpSK3NtMjBFU0pnWTRjaXJGOWJXWHJycHBtVGw2YTg5RGhBVUc0Yi8xSnlRZ2lXL2hub0tuYzZmc3l1TnE5QTNYNGVCM0kiLCJtYWMiOiJhZmU4ODY4Zjc2NjEzYmQzOWMwNjY1ODA1MDhjYjNjNGUxMzkxMTkyY2U5OTU2MWE0YmYzMTljYWRmOGRjZWMzIiwidGFnIjoiIn0%3D; expires=Sat, 05 Jul 2025 17:03:52 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6IjR4VGR6SjExbytyWVRjQkN1TDBtSXc9PSIsInZhbHVlIjoiTTYra2xLLzJZZU1LVG5wbjM2NDkvNDBiejVoY0VUS1cvQk1MTHdoZXZ6YTJZSFhsOXpkbFUrejVRVkpSK3NtMjBFU0pnW" 1 => "laravel_session=eyJpdiI6ImRxak9DMDNOOVVKMkorWnpQZzQ5cUE9PSIsInZhbHVlIjoiczhVTnRlaVlYL2FUNmhjbmJrcUM3QkJ5NGJzWjRQWE4wUFJyNXBqNlJxRjdEeGM4ZFFxRTZKWDF4RWtSZzJFaUp4bUFCWnNUR0dWWmpZNUl2d3VkdFBsME9hck5SYm9KZGtrTHdqVUF0R29obFVES2twRzMvRVQ3anBxR2lhZHoiLCJtYWMiOiI3ZTBjYmMwOWU2YzYyMDA2NzkxOWJmMzc5NWY4MDcyZjg2YzAxNTg4ZWRmZmNlZTkxYzkwN2E4YjgwNzgyMzBkIiwidGFnIjoiIn0%3D; expires=Sat, 05 Jul 2025 17:03:52 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6ImRxak9DMDNOOVVKMkorWnpQZzQ5cUE9PSIsInZhbHVlIjoiczhVTnRlaVlYL2FUNmhjbmJrcUM3QkJ5NGJzWjRQWE4wUFJyNXBqNlJxRjdEeGM4ZFFxRTZKWDF4RWtSZzJFaUp4" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IjR4VGR6SjExbytyWVRjQkN1TDBtSXc9PSIsInZhbHVlIjoiTTYra2xLLzJZZU1LVG5wbjM2NDkvNDBiejVoY0VUS1cvQk1MTHdoZXZ6YTJZSFhsOXpkbFUrejVRVkpSK3NtMjBFU0pnWTRjaXJGOWJXWHJycHBtVGw2YTg5RGhBVUc0Yi8xSnlRZ2lXL2hub0tuYzZmc3l1TnE5QTNYNGVCM0kiLCJtYWMiOiJhZmU4ODY4Zjc2NjEzYmQzOWMwNjY1ODA1MDhjYjNjNGUxMzkxMTkyY2U5OTU2MWE0YmYzMTljYWRmOGRjZWMzIiwidGFnIjoiIn0%3D; expires=Sat, 05-Jul-2025 17:03:52 GMT; path=/XSRF-TOKEN=eyJpdiI6IjR4VGR6SjExbytyWVRjQkN1TDBtSXc9PSIsInZhbHVlIjoiTTYra2xLLzJZZU1LVG5wbjM2NDkvNDBiejVoY0VUS1cvQk1MTHdoZXZ6YTJZSFhsOXpkbFUrejVRVkpSK3NtMjBFU0pnW" 1 => "laravel_session=eyJpdiI6ImRxak9DMDNOOVVKMkorWnpQZzQ5cUE9PSIsInZhbHVlIjoiczhVTnRlaVlYL2FUNmhjbmJrcUM3QkJ5NGJzWjRQWE4wUFJyNXBqNlJxRjdEeGM4ZFFxRTZKWDF4RWtSZzJFaUp4bUFCWnNUR0dWWmpZNUl2d3VkdFBsME9hck5SYm9KZGtrTHdqVUF0R29obFVES2twRzMvRVQ3anBxR2lhZHoiLCJtYWMiOiI3ZTBjYmMwOWU2YzYyMDA2NzkxOWJmMzc5NWY4MDcyZjg2YzAxNTg4ZWRmZmNlZTkxYzkwN2E4YjgwNzgyMzBkIiwidGFnIjoiIn0%3D; expires=Sat, 05-Jul-2025 17:03:52 GMT; path=/; httponlylaravel_session=eyJpdiI6ImRxak9DMDNOOVVKMkorWnpQZzQ5cUE9PSIsInZhbHVlIjoiczhVTnRlaVlYL2FUNmhjbmJrcUM3QkJ5NGJzWjRQWE4wUFJyNXBqNlJxRjdEeGM4ZFFxRTZKWDF4RWtSZzJFaUp4" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "adBlR0ngaEdaAAZiI0xkE1FfydjzV5FJYlrekf3u" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/interactive-computer-graphics" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]