Class: Pdfrb::Model::Type::ThreeDView

Inherits:
Cos::Dictionary show all
Defined in:
lib/pdfrb/model/type/three_d_view.rb

Overview

3D View (s13.6.4). A single camera/lighting/material configuration for a 3D stream.

Instance Attribute Summary

Attributes inherited from Object

#document, #gen, #oid, #value

Instance Method Summary collapse

Methods inherited from Cos::Dictionary

#[], #[]=, arlington_available?, arlington_default, arlington_key_to_symbol, arlington_loaded_for?, arlington_mark_loaded, arlington_object, arlington_one_type_to_ruby, arlington_required?, arlington_types_to_ruby, arlington_version, define_field, define_field_from_arlington, #delete, #each, each_field, #each_raw, #empty?, field, #initialize, #key?, #keys, lookup_type, own_fields, #pdf_type, register_type, type_map, #validate

Methods inherited from Object

#==, define_type, #deref, #indirect?, #initialize, #must_be_indirect?, #pdf_type, pdf_type

Constructor Details

This class inherits a constructor from Pdfrb::Model::Cos::Dictionary

Instance Method Details

#camera_offsetObject



15
# File 'lib/pdfrb/model/type/three_d_view.rb', line 15

def camera_offset; self[:CO]; end

#camera_to_worldObject



13
# File 'lib/pdfrb/model/type/three_d_view.rb', line 13

def camera_to_world; self[:C2W]; end

#external_nameObject



10
# File 'lib/pdfrb/model/type/three_d_view.rb', line 10

def external_name; self[:XN]; end

#has_measures?Boolean

Returns:

  • (Boolean)


27
28
29
# File 'lib/pdfrb/model/type/three_d_view.rb', line 27

def has_measures?
  !!measures && (!measures.is_a?(Array) || !measures.empty?)
end

#internal_nameObject



11
# File 'lib/pdfrb/model/type/three_d_view.rb', line 11

def internal_name; self[:IN]; end

#matrix_space?Boolean

Returns:

  • (Boolean)


19
20
21
# File 'lib/pdfrb/model/type/three_d_view.rb', line 19

def matrix_space?
  measure_space == :M
end

#measure_spaceObject



12
# File 'lib/pdfrb/model/type/three_d_view.rb', line 12

def measure_space; self[:MS]&.to_sym; end

#measuresObject



17
# File 'lib/pdfrb/model/type/three_d_view.rb', line 17

def measures; self[:MA]; end

#projectionObject



16
# File 'lib/pdfrb/model/type/three_d_view.rb', line 16

def projection; self[:P]; end

#resolved_projectionObject



31
32
33
34
35
36
# File 'lib/pdfrb/model/type/three_d_view.rb', line 31

def resolved_projection
  ref = projection
  return nil unless ref && document

  document.object(ref)
end

#typeObject



9
# File 'lib/pdfrb/model/type/three_d_view.rb', line 9

def type; self[:Type]; end

#u3d_pathObject



14
# File 'lib/pdfrb/model/type/three_d_view.rb', line 14

def u3d_path; self[:U3DPath]; end

#u3d_space?Boolean

Returns:

  • (Boolean)


23
24
25
# File 'lib/pdfrb/model/type/three_d_view.rb', line 23

def u3d_space?
  measure_space == :U3D
end