<commit_before>﻿module BABYLON {
    var eventPrefix = Tools.GetPointerPrefix();

    export class ArcRotateCamera extends TargetCamera {
        public inertialAlphaOffset = 0;
        public inertialBetaOffset = 0;
        public inertialRadiusOffset = 0;
        public lowerAlphaLimit = null;
        public upperAlphaLimit = null;
        public lowerBetaLimit = 0.01;
        public upperBetaLimit = Math.PI;
        public lowerRadiusLimit = null;
        public upperRadiusLimit = null;
        public angularSensibilityX = 1000.0;
        public angularSensibilityY = 1000.0;
        public wheelPrecision = 3.0;
        public pinchPrecision = 2.0;
        public panningSensibility: number = 50.0;
        public inertialPanningX: number = 0;
        public inertialPanningY: number = 0;
        public keysUp = [38];
        public keysDown = [40];
        public keysLeft = [37];
        public keysRight = [39];
        public zoomOnFactor = 1;
        public targetScreenOffset = Vector2.Zero();
        public pinchInwards = true;
        public allowUpsideDown = true;

        private _keys = [];
        public _viewMatrix = new Matrix();
        private _attachedElement: HTMLElement;

        private _onContextMenu: (e: PointerEvent) => void;
        private _onPointerDown: (e: PointerEvent) => void;
        private _onPointerUp: (e: PointerEvent) => void;
        private _onPointerMove: (e: PointerEvent) => void;
        private _wheel: (e: MouseWheelEvent) => void;
        private _onMouseMove: (e: MouseEvent) => any;
        private _onKeyDown: (e: KeyboardEvent) => any;
        private _onKeyUp: (e: KeyboardEvent) => any;
        private _onLostFocus: (e: FocusEvent) => any;
        public _reset: () => void;
        private _onGestureStart: (e: PointerEvent) => void;
        private _onGesture: (e: MSGestureEvent) => void;
        private _MSGestureHandler: MSGesture;

        // Panning
        private _localDirection: Vector3;
        private _transformedDirection: Vector3;
        private _isRightClick: boolean = false;
        private _isCtrlPushed: boolean = false;

        // Collisions
        public onCollide: (collidedMesh: AbstractMesh) => void;
        public checkCollisions = false;
        public collisionRadius = new Vector3(0.5, 0.5, 0.5);
        private _collider = new Collider();
        private _previousPosition = Vector3.Zero();
        private _collisionVelocity = Vector3.Zero();
        private _newPosition = Vector3.Zero();
        private _previousAlpha: number;
        private _previousBeta: number;
        private _previousRadius: number;
        //due to async collision inspection
        private _collisionTriggered: boolean;

        constructor(name: string, public alpha: number, public beta: number, public radius: number, public target: any, scene: Scene) {<commit_msg>made angularSensibility private and gave it get set methods<commit_after>﻿module BABYLON {
    var eventPrefix = Tools.GetPointerPrefix();

    export class ArcRotateCamera extends TargetCamera {
        public inertialAlphaOffset = 0;
        public inertialBetaOffset = 0;
        public inertialRadiusOffset = 0;
        public lowerAlphaLimit = null;
        public upperAlphaLimit = null;
        public lowerBetaLimit = 0.01;
        public upperBetaLimit = Math.PI;
        public lowerRadiusLimit = null;
        public upperRadiusLimit = null;
        public angularSensibilityX = 1000.0;
        public angularSensibilityY = 1000.0;
        public wheelPrecision = 3.0;
        public pinchPrecision = 2.0;
        public panningSensibility: number = 50.0;
        public inertialPanningX: number = 0;
        public inertialPanningY: number = 0;
        public keysUp = [38];
        public keysDown = [40];
        public keysLeft = [37];
        public keysRight = [39];
        public zoomOnFactor = 1;
        public targetScreenOffset = Vector2.Zero();
        public pinchInwards = true;
        public allowUpsideDown = true;

        private _keys = [];
        public _viewMatrix = new Matrix();
        private _attachedElement: HTMLElement;
        
        private _angularSensibility: number = 1000.0;
        private _onContextMenu: (e: PointerEvent) => void;
        private _onPointerDown: (e: PointerEvent) => void;
        private _onPointerUp: (e: PointerEvent) => void;
        private _onPointerMove: (e: PointerEvent) => void;
        private _wheel: (e: MouseWheelEvent) => void;
        private _onMouseMove: (e: MouseEvent) => any;
        private _onKeyDown: (e: KeyboardEvent) => any;
        private _onKeyUp: (e: KeyboardEvent) => any;
        private _onLostFocus: (e: FocusEvent) => any;
        public _reset: () => void;
        private _onGestureStart: (e: PointerEvent) => void;
        private _onGesture: (e: MSGestureEvent) => void;
        private _MSGestureHandler: MSGesture;

        // Panning
        private _localDirection: Vector3;
        private _transformedDirection: Vector3;
        private _isRightClick: boolean = false;
        private _isCtrlPushed: boolean = false;

        // Collisions
        public onCollide: (collidedMesh: AbstractMesh) => void;
        public checkCollisions = false;
        public collisionRadius = new Vector3(0.5, 0.5, 0.5);
        private _collider = new Collider();
        private _previousPosition = Vector3.Zero();
        private _collisionVelocity = Vector3.Zero();
        private _newPosition = Vector3.Zero();
        private _previousAlpha: number;
        private _previousBeta: number;
        private _previousRadius: number;
        //due to async collision inspection
        private _collisionTriggered: boolean;
        
        public get angularSensibility() {
            this.angularSensibilityX = this._angularSensibility;
            this.angularSensibilityY = this._angularSensibility;
            return this._angularSensibility;
        }
        
        public set angularSensibility(value) {
            this._angularSensibility = value;
            this.angularSensibilityX = value;
            this.angularSensibilityY = value;
        }
        
        constructor(name: string, public alpha: number, public beta: number, public radius: number, public target: any, scene: Scene) {
{'fraction_non_alphanumeric': 0.0847160178685386, 'fraction_numerical': 0.015794511805998723, 'mean_word_length': 2.5219101123595506, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 29, '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': '3209671', 'n_tokens_mistral': 1788, 'n_tokens_neox': 1681, 'n_words': 492}