Chuyên Đề Lập trình đồ họa với Java 3D

Thảo luận trong 'Chưa Phân Loại' bắt đầu bởi Thúy Viết Bài, 5/12/13.

  1. Thúy Viết Bài

    Thành viên vàng

    Bài viết:
    198,891
    Được thích:
    173
    Điểm thành tích:
    0
    Xu:
    0Xu
    Lập trình đồ họa với Java 3D

    Thông tin chi tiết
    Phần 1 7
    Lập trình đồ họa với Java 2D 7
    Chương 1 8
    Tổng quan về Java 2D API 8
    1.1 Enhanced Graphics, Text, and imaging 8
    1.2 Rendering Model 9
    1.2.1 Coordinate Systems 9
    1.2.1.1 User Space 9
    1.2.1.2 Device Space 10
    1.2.2 Transforms 10
    1.2.3 Fonts 10
    1.2.4 Images 11
    1.2.5 Fills and Strokes 12
    1.2.6 Composites 12
    Backward Compatibility and Platform independence 13
    1.3.1 Backward Compatibility 13
    1.3.2 Platform independence 14
    1.4 The Java 2D™ API Packages 14
    Chương 2: 17
    Rendering with Graphics2D 17
    2.1 Các lớp và giao diện. 17
    2.2 Rendering Concepts 18
    2.2.1 Rendering Process 18
    2.2.2 Controlling Rendering Quality 19
    2.2.3 Stroke Attributes 20
    2.2.4 Fill Attributes 21
    Quá trình xử lý theo phiên 21
    2.2.5 Clipping Paths 22
    2.2.6 Transformations 22
    2.2.6.1 Constructing an AffineTransform 23
    2.2.7 Composite Attributes 24
    2.2.7.1 Managing Transparency 24
    2.2.7.2 Transparency and images 25
    2.3 Thiết lập Graphics2Context 25
    2.3.1 Setting Rendering Hints 25
    2.3.2 Specifying Stroke Attributes 26
    2.3.2.1 Setting the Stroke Width 26
    2.3.2.2 Specifying Join and Endcap Styles 26
    2.3.2.3 Setting the Dashing Pattern 26
    2.3.3 Specifying Fill Attributes 27
    2.3.3.1 Filling a Shape with a Gradient 27
    2.3.3.2 Filling a Shape with a Texture 27
    2.3.4 Setting the Clipping Path 28
    2.3.5 Setting the Graphics2D Transform 29
    2.3.6 Specifying a Composition Style 30
    2.3.6.1 Using the Source Over Compositing Rule 30
    2.3.6.2 Increasing the Transparency of Composited Objects 30
    2.4 Rendering Graphics Primitives 31
    2.4.1 Drawing a Shape 31
    2.4.2 Filling a Shape 32
    2.4.3 Rendering Text 32
    2.4.4 Rendering images 32
    2.5 Defining Custom Composition Rules 33
    2.6 Rendering in a Multi-Screen Environment 33
    Chương 3 41
    Các đối tượng hình họa 41
    3.1 Giao diện và lớp. 41
    3.2 Các khái niệm hình học: 43
    3.2.1 Constructive Area Geometry 43
    3.2.2 Bounds and Hit Testing 43
    3.3 Combining Areas to Create New Shapes 47
    Chương 4: 50
    Hiển thị Font và văn bản 50
    4.1.Giao diện và lớp. 50
    4.2.Các khái niệm về Font 51
    4.3 Các khái niệm về Text Layout. 52
    4.3.1 Vẽ chữ. 52
    4.3.2 Ordering Text 54
    4.3.3 Đo và định vị văn bản 55
    4.3.4 Hỗ trợ thao tác với văn bản. 55
    4.3.4.1 Hiển thị dấu nhắc 55
    4.3.4.2 Di chuyển dấu nhắc. 56
    4.3.4.3 Hit Testing 57
    4.3.4.4 Đánh dấu vùng lựa chọn. 58
    4.3.5 Thực thi việc hiển thị văn bản trong ứng dụng Java™ . 58
    Quản lý việc hiển thị văn bản. 59
    4.4.1 Trình bày văn bản. 60
    Hiển thị dấu nhắc kép. 60
    4.4.3 Di chuyển dấu nhắc. 61
    4.4.4 Hit Testing 61
    4.4.5 Đánh dấu vùng lựa chọn. 61
    4.4.6 Querying Layout Metrics 61
    4.4.7 Vẽ văn bản trên nhiều dòng. 62
    Chương 5 66
    Tạo ảnh 66
    5.1 Các giao diện và các lớp 66
    5.1.1 Các giao diện imaging (imaging interfaces) 66
    5.1.2 Các lớp dữ liệu ảnh(image Data Classes) 67
    5.1.3 image Operation Classes 68
    5.1.4 Sample Model Classes 68
    Color Model Classes 69
    5.1.6 Exception Classes 70
    5.2 Immediate Mode imaging Concepts 70
    5.2.1 Terminology 71
    5.3 Using Bufferedimages 72
    5.3.1 Creating a Bufferedimage 72
    5.3.2 Drawing in an Offscreen Buffer 73
    5.3.2.1 Creating an Offscreen Buffer 73
    5.3.2.2 Drawing in an Offscreen Buffer 74
    5.3.3 Manipulating Bufferedimage Data Directly 75
    5.3.4 Filtering a Bufferedimage 75
    5.3.5 Rendering a Bufferedimage 75
    5.4 Managing and Manipulating Rasters 78
    5.4.1 Creating a Raster 79
    5.4.2 Parent and Child Rasters 79
    5.4.4 The WritableRaster Subclass 79
    5.5 Image Data and DataBuffers 79
    5.6 Extracting Pixel Data from a SampleModel 80
    5.7 ColorModels and Color Data 81
    5.7.1 Lookup Table 81
    5.8 image Processing and Enhancement 81
    5.8.1 Using an image Processing Operation 83
    Chương 6 85
    Mầu sắc 85
    6.1 Các lớp 85
    6.2 Những định nghĩa về mầu sắc. 86
    6.2.1 Không gian mầu 86
    6.2.1 Biểu diễn màu 88
    Chương 7 90
    In ấn 90
    7.1 Các giao diện và các lớp 90
    7.2.1 Supporting Printing 91
    7.2.1.1 Điều khiển in (Job Control) 91
    7.2.2 Page Painters 92
    7.2.3 Printable Jobs and Pageable Jobs 93
    7.2.4 Typical Life-Cycle of a PrinterJob 94
    7.3 Printing with Printables 95
    7.3.2 Printing a File 96
    7.4.1 Using a Pageable Job 99
    7.4.2 Using Multiple Page Painters 100
    Phần 2 106
    Lập trình đồ họa với Java 3D 106
    CHƯƠNG 1 107
    NHẬP MÔN LẬP TRÌNH TRÊN JAVA 3D 107
    1.1 Tổng quan về Java 3D API ™ 107
    1.2 Các vấn đề cơ bản về Java 3D API™ 107
    1.3 Xây dựng đồ thị khung cảnh 108
    1.3.1 Thừa kế cấp cao từ Java 3D API 111
    1.4 Cách thức để viết một chương trình Java 3D 112
    1.4.1 Công thức đơn giản để viết một chương trình Java 3D 112
    1.5 Một vài thuật ngữ trong Java 3D 115
    1.6 Ví dụ đơn giản: HelloJava3Da 116
    1.6.1 Các lớp của Java 3D Classes được sử dụng trong HelloJava3Da 120
    Tạo nên hình lập phương có kích thước được định ra bởi các giá trị cho trước. 122
    1.7 Quay hình lập phương 122
    1.7.1 Sự kết hợp của các phép biến hình: HelloJava3Db 123
    1.8 Khả năng và hoạt động 123
    1.8.1 Dịch các nội dung 124
    1.8.2 Khả năng 124
    1.9 Thêm vào các hành vi animation 125
    1.9.1 Định nghĩa các hành vi animation 126
    1.9.2 Các hàm biến đổi về thời gian: Ánh xạ một hành vi với thời gian 126
    1.9.3 Lập danh mục các vùng 127
    1.9.4 Ví dụ về hành vi: HelloJava3Dc 128
    1.9.5 Phép biến hình và kết hợp các hành vi .Ví dụ: HelloJava3Dd 129
    CHƯƠNG 2 132
    Tạo các hình 132
    2.1 Hệ tọa độ thế giới ảo 132
    2.2 Visual Object Definition Basics 132
    2.2.1 An Instance of Shape3D Defines a Visual Object 133
    2.2.2 Node Components 134
    2.2.3 Defining Visual Object Classes 134
    2.3 Các lớp tiện ích hình học 135
    2.3.1 Box 136
    2.3.2 Cone 136
    2.3.3 Cylinder 137
    2.3.4 Sphere 137
    2.3.5 More About Geometric Primitives 138
    2.3.6 ColorCube 138
    2.3.7 Example: Creating a Simple Yo-Yo From Two Cones 138
    2.4 Các lớp toán học 142
    2.4.1 Point Classes 144
    2.4.2 Color Classes 144
    2.4.3 Vector Classes 145
    2.4.4 TexCoord Classes 146
    2.5 Các lớp hình học 146
    2.5.1 GeometryArray Class 147
    2.5.2 Subclasses of GeometryArray 151
    2.5.3 Subclasses of GeometryStripArray 152
    2.5.4 Subclasses of IndexedGeometryArray 156
    2.5.5 Axis.java is an Example of IndexedGeometryArray 158
    2.6 Appearance and Attributes 158
    2.6.1 Appearance NodeComponent 159
    2.6.2 Sharing NodeComponent Objects 159
    2.6.3 Attribute Classes 160
    2.6.4 Example: Back Face Culling 165
    2.7 Bounds and Scope 170
    2.7.1 Bounds Node Components 171
    2.7.2 BoundingLeafa Node 173
    2.7.3 Scope 174
    2.8 Hình học nâng cao 175
    2.8.1 Multiple Geometries in a Single Shape3D 176
    2.8.2 GeometryArray 177
    2.8.4 AlternateAppearance <new in 1.2> 181
    2.9 Clipping – Cắt xén 182
    2.9.1 View Defines a Frustum 182
    2.9.2 Clip Node 183
    2.9.4 ModelClip Example 184
    CHƯƠNG 3 186
    TẠO NỘI DUNG 186
    3.1 Nội dung chính 186
    3.1.1 GeometryInfo 186
    3.2.1 Một ví dụ đơn giản về GeometryInfo 187
    3.2.2 Sử dụng GeometryInfo 187
    3.2.3 Một số lớp thông dụng có liên quan đến GeometryInfo 188
    Loaders 191
    Một ví dụ đơn giản sử dụng leader. 191
    Các loader phổ biến 191
    3.3.3 Giao diện của gói Loader và lớp cơ sở 192
    Viết một loader 194
    Công việc của một loader 194
    Hàm tạo lớp Loader 195
    Viết một File Loader đơn giản 196
    Text2D 201
    3.5.1 Ví dụ Text2D đơn giản 202
    3.5.2 Lớp Text2D 202
    Text3D 203
    Một ví dụ Text3D 204
    Những lớp liên quan để tạo ra đối tượng Text3D 205
    Nền không gian đồ họa 209
    Một ví dụ background 209
    Lớp Background 210
    CHƯƠNG 4 212
    TƯƠNG TÁC 212
    4.1 Hành vi: Cơ sở của tương tác và hoạt hình 212
    4.1.1 Ứng dụng của hành vi 212
    4.1.2 Tổng quan lớp Behaviour 213
    4.2 Cơ bản về hành vi 213
    4.2.1 Viết một lớp Behaviour 214
    4.2.2 Sử dụng một lớp Behaviour 216
    4.2.3 Các hàm API trong lớp Behaviour 219
    4.3 Điều kiện kích hoạt: Cách kích hoạt các hành vi 220
    4.3.1 Điều kiện kích hoạt 221
    4.3.2 WakeupCriterion 221
    4.3.3 Quy định lớp WakeupCriterion 222
    4.3.4 Thành phần của WakeupCondition 230
    4.4 Lớp Behaviour tiện ích xử lý bàn phím 231
    4.4.1 Một ví dụ đơn giản 231
    4.4.2 Lớp KeyNavigatorBehaviour và KeyNavigator 232
    4.5 Lớp tiện ích tương tác với chuột 233
    4.5.1 Sử dụng lớp MouseBehaviour 233
    4.5.2 Mouse Behaviour Foundation 236
    4.5.3 Các lớp MouseBehaviour 236
    4.5.4 Mouse Navigation 238
    4.6 Picking Object 239
    4.6.1 Using Picking Utility Classes 242
    4.6.2 Các hàm API cơ bản trong các lớp Picking 244
    4.6.3 Các lớp picking 249
    4.6.4 Các lớp Picking Behavior 251
    CHƯƠNG 5 253
    Hoạt Hình 253
    Animation - Hoạt hình: 253
    Đối tượng Interpolator và Alpha với hoạt ảnh dựa thời gian 254
    Alpha 254
    Sử dụng các đối tượng Interpolator và Alpha: 256
    Ví dụ sử dụng lớp Alpha và RotationInterpolator: 256
    Alpha API: 259
    Các lớp hành vi Interpolator : 261
    Core Interpolator API: 268
    Các lớp đối tượng nội suy đường: 272
    Lớp Billboard : 277
    Sử dụng đối tượng Billboard 277
    Chương trình ví dụ sử dụng Billboard 279
    Giao diện lập trình ứng dụng của Billboard (Billboard API) 281
    OrientedShape3D 282
    Giao diện lập trình ứng dụng của OrientedShape3D 282
    Ví dụ sử dụng OrientedShape3D 283
    Hoạt ảnh mức chi tiết (Level Of Detail Animations) 284
    Sử dụng đối tượng DistanceLOD 285
    Các lỗi thường gặp khi sử dụng LOD 285
    Ví dụ sử dụng DistanceLOD 285
    Giao diện lập trình ứng dụng DistanceLOD API 289
    Morph 290
    Sử dụng đối tượng Morph 290
    Ví dụ sử dụng Morph 291
    Giao diện lập trình ứng dụng Morph API 293
    Giao diện GeometryUpdater 294
    Sử dụng GeometryUpdater 294
    Chương trình ví dụ hệ thống phân tử đài phun nước sử dụng GeometryUpdater 295
     
Đang tải...