<commit_before>import math
from gem import vector
from gem import matrix
from gem import quaternion

# Modes
MODE_ORTHOGRAPHIC = 1
MODE_PERSPECTIVE = 2

class Camera(object):
    def __init__(self, camType):
        
        self.camType = camType
        
        # Camera information
        self.yAxis = vector.Vector(3, data=[0.0, 1.0, 0.0])
        self.position = vector.Vector(3)
        self.rotation = quaternion.Quaternion()
        self.sensitivity = 0.05
        self.aperature = 0

        # Camera modifiers
        self.cameraRotation = matrix.Matrix(4)
        self.cameraPosition = matrix.Matrix(4)
        self.cameraTranslation = matrix.Matrix(4)

        # These are required for rendering
        self.projection = matrix.Matrix(4)
        self.viewMatrix = matrix.Matrix(4)
        self.viewMatrixInverse = matrix.Matrix(4)

        # Camera will rotate around this point
        self.originVisiblity = True
        self.originPosition = [0.0, 0.0, 0.0]

        # Arcball properties
        self.cur_x = 0
        self.cur_y = 0
        self.arcball_on = False

    def get_mode(self):
        return self.camType
        
    def clone(self):
        camNew = Camera(self.camType)
        camNew.set_view(self.view)
        camNew.set_program(self.program)
        camNew.projection = self.projection
        camNew.position = self.position
        camnew.rotation = self.rotation
        return camNew

    def set_view(self, view):
        # Initialize view mode
        self.view = view
        <commit_msg>Removed unused import, fixed spelling error.<commit_after>from gem import vector
from gem import matrix
from gem import quaternion

# Modes
MODE_ORTHOGRAPHIC = 1
MODE_PERSPECTIVE = 2

class Camera(object):
    def __init__(self, camType):

        self.camType = camType

        # Camera information
        self.yAxis = vector.Vector(3, data=[0.0, 1.0, 0.0])
        self.position = vector.Vector(3)
        self.rotation = quaternion.Quaternion()
        self.sensitivity = 0.05
        self.aperature = 0

        # Camera modifiers
        self.cameraRotation = matrix.Matrix(4)
        self.cameraPosition = matrix.Matrix(4)
        self.cameraTranslation = matrix.Matrix(4)

        # These are required for rendering
        self.projection = matrix.Matrix(4)
        self.viewMatrix = matrix.Matrix(4)
        self.viewMatrixInverse = matrix.Matrix(4)

        # Camera will rotate around this point
        self.originVisiblity = True
        self.originPosition = [0.0, 0.0, 0.0]

        # Arcball properties
        self.cur_x = 0
        self.cur_y = 0
        self.arcball_on = False

    def get_mode(self):
        return self.camType

    def clone(self):
        camNew = Camera(self.camType)
        camNew.set_view(self.view)
        camNew.set_program(self.program)
        camNew.projection = self.projection
        camNew.position = self.position
        camNew.rotation = self.rotation
        return camNew

    def set_view(self, view):
        # Initialize view mode
        self.view = view

{'fraction_non_alphanumeric': 0.08641571194762684, 'fraction_numerical': 0.018330605564648116, 'mean_word_length': 2.153766769865841, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '711398', 'n_tokens_mistral': 946, 'n_tokens_neox': 899, 'n_words': 215}