├── apps └── ptk │ ├── __init__.py │ ├── app │ ├── style2.css │ ├── 2024.png │ ├── preload.js │ ├── theme.json │ ├── templates.json │ └── index.html │ └── package.json ├── src ├── assets │ ├── ComicSans.ttf │ ├── app │ │ ├── icon.icns │ │ ├── icon.ico │ │ └── icon.png │ ├── modules │ │ ├── three-addons │ │ │ ├── libs │ │ │ │ ├── ammo.wasm.wasm │ │ │ │ ├── rhino3dm │ │ │ │ │ └── rhino3dm.wasm │ │ │ │ ├── draco │ │ │ │ │ ├── draco_decoder.wasm │ │ │ │ │ ├── gltf │ │ │ │ │ │ └── draco_decoder.wasm │ │ │ │ │ └── README.md │ │ │ │ └── basis │ │ │ │ │ └── basis_transcoder.wasm │ │ │ ├── nodes │ │ │ │ ├── core │ │ │ │ │ ├── NodeParser.js │ │ │ │ │ ├── UniformGroup.js │ │ │ │ │ ├── NodeVar.js │ │ │ │ │ ├── NodeAttribute.js │ │ │ │ │ ├── NodeCode.js │ │ │ │ │ ├── NodeVarying.js │ │ │ │ │ ├── NodeCache.js │ │ │ │ │ ├── NodeFunctionInput.js │ │ │ │ │ ├── LightingModel.js │ │ │ │ │ ├── StructTypeNode.js │ │ │ │ │ ├── NodeFunction.js │ │ │ │ │ ├── ArrayUniformNode.js │ │ │ │ │ ├── NodeUniform.js │ │ │ │ │ ├── ConstNode.js │ │ │ │ │ ├── ParameterNode.js │ │ │ │ │ ├── constants.js │ │ │ │ │ ├── UniformGroupNode.js │ │ │ │ │ ├── BypassNode.js │ │ │ │ │ ├── CacheNode.js │ │ │ │ │ ├── VarNode.js │ │ │ │ │ ├── ContextNode.js │ │ │ │ │ ├── IndexNode.js │ │ │ │ │ ├── NodeKeywords.js │ │ │ │ │ ├── OutputStructNode.js │ │ │ │ │ ├── TempNode.js │ │ │ │ │ └── AssignNode.js │ │ │ │ ├── functions │ │ │ │ │ ├── BSDF │ │ │ │ │ │ ├── BRDF_Lambert.js │ │ │ │ │ │ ├── EnvironmentBRDF.js │ │ │ │ │ │ ├── Schlick_to_F0.js │ │ │ │ │ │ ├── F_Schlick.js │ │ │ │ │ │ ├── D_GGX.js │ │ │ │ │ │ ├── DFGApprox.js │ │ │ │ │ │ ├── V_GGX_SmithCorrelated.js │ │ │ │ │ │ └── BRDF_GGX.js │ │ │ │ │ └── material │ │ │ │ │ │ ├── getGeometryRoughness.js │ │ │ │ │ │ └── getRoughness.js │ │ │ │ ├── parsers │ │ │ │ │ └── GLSLNodeParser.js │ │ │ │ ├── lighting │ │ │ │ │ ├── LightingNode.js │ │ │ │ │ ├── AONode.js │ │ │ │ │ ├── AmbientLightNode.js │ │ │ │ │ ├── LightUtils.js │ │ │ │ │ ├── IESSpotLightNode.js │ │ │ │ │ ├── DirectionalLightNode.js │ │ │ │ │ └── LightNode.js │ │ │ │ ├── accessors │ │ │ │ │ ├── PointUVNode.js │ │ │ │ │ ├── TextureStoreNode.js │ │ │ │ │ ├── InstancedPointsMaterialNode.js │ │ │ │ │ ├── StorageBufferNode.js │ │ │ │ │ ├── BufferNode.js │ │ │ │ │ ├── UserDataNode.js │ │ │ │ │ ├── ReflectVectorNode.js │ │ │ │ │ ├── UVNode.js │ │ │ │ │ ├── TextureSizeNode.js │ │ │ │ │ ├── ModelViewProjectionNode.js │ │ │ │ │ ├── ModelNode.js │ │ │ │ │ ├── CubeTextureNode.js │ │ │ │ │ ├── MaterialReferenceNode.js │ │ │ │ │ └── SceneNode.js │ │ │ │ ├── display │ │ │ │ │ ├── FrontFacingNode.js │ │ │ │ │ ├── PosterizeNode.js │ │ │ │ │ ├── ViewportSharedTextureNode.js │ │ │ │ │ └── ViewportDepthTextureNode.js │ │ │ │ ├── materials │ │ │ │ │ ├── LineBasicNodeMaterial.js │ │ │ │ │ ├── MeshBasicNodeMaterial.js │ │ │ │ │ ├── PointsNodeMaterial.js │ │ │ │ │ ├── MeshLambertNodeMaterial.js │ │ │ │ │ ├── MeshNormalNodeMaterial.js │ │ │ │ │ └── Materials.js │ │ │ │ ├── fog │ │ │ │ │ ├── FogNode.js │ │ │ │ │ ├── FogRangeNode.js │ │ │ │ │ └── FogExp2Node.js │ │ │ │ ├── utils │ │ │ │ │ ├── ArrayElementNode.js │ │ │ │ │ ├── DiscardNode.js │ │ │ │ │ ├── MatcapUVNode.js │ │ │ │ │ ├── EquirectUVNode.js │ │ │ │ │ ├── MaxMipLevelNode.js │ │ │ │ │ ├── SpriteSheetUVNode.js │ │ │ │ │ ├── SpecularMIPLevelNode.js │ │ │ │ │ ├── RemapNode.js │ │ │ │ │ ├── RotateUVNode.js │ │ │ │ │ ├── ConvertNode.js │ │ │ │ │ ├── PackingNode.js │ │ │ │ │ ├── JoinNode.js │ │ │ │ │ └── SetNode.js │ │ │ │ ├── code │ │ │ │ │ └── ExpressionNode.js │ │ │ │ ├── math │ │ │ │ │ └── HashNode.js │ │ │ │ ├── procedural │ │ │ │ │ └── CheckerNode.js │ │ │ │ ├── materialx │ │ │ │ │ └── lib │ │ │ │ │ │ └── mx_transform_color.js │ │ │ │ └── loaders │ │ │ │ │ ├── NodeMaterialLoader.js │ │ │ │ │ └── NodeObjectLoader.js │ │ │ ├── renderers │ │ │ │ ├── common │ │ │ │ │ ├── Pipeline.js │ │ │ │ │ ├── UniformBuffer.js │ │ │ │ │ ├── ProgrammableStage.js │ │ │ │ │ ├── nodes │ │ │ │ │ │ ├── NodeSampler.js │ │ │ │ │ │ ├── NodeUniformsGroup.js │ │ │ │ │ │ ├── NodeBuilderState.js │ │ │ │ │ │ └── NodeSampledTexture.js │ │ │ │ │ ├── Constants.js │ │ │ │ │ ├── Sampler.js │ │ │ │ │ ├── StorageBuffer.js │ │ │ │ │ ├── ComputePipeline.js │ │ │ │ │ ├── RenderPipeline.js │ │ │ │ │ ├── Binding.js │ │ │ │ │ ├── StorageTexture.js │ │ │ │ │ ├── Color4.js │ │ │ │ │ ├── PostProcessing.js │ │ │ │ │ ├── Buffer.js │ │ │ │ │ ├── RenderLists.js │ │ │ │ │ ├── DataMap.js │ │ │ │ │ ├── BufferUtils.js │ │ │ │ │ ├── Animation.js │ │ │ │ │ ├── RenderContext.js │ │ │ │ │ ├── Info.js │ │ │ │ │ └── ChainMap.js │ │ │ │ ├── webgpu │ │ │ │ │ ├── nodes │ │ │ │ │ │ └── WGSLNodeParser.js │ │ │ │ │ └── WebGPURenderer.js │ │ │ │ ├── webgl-legacy │ │ │ │ │ └── nodes │ │ │ │ │ │ ├── SlotNode.js │ │ │ │ │ │ └── WebGLNodes.js │ │ │ │ └── webgl │ │ │ │ │ └── utils │ │ │ │ │ ├── WebGLExtensions.js │ │ │ │ │ └── WebGLCapabilities.js │ │ │ ├── offscreen │ │ │ │ ├── offscreen.js │ │ │ │ └── jank.js │ │ │ ├── transpiler │ │ │ │ ├── Transpiler.js │ │ │ │ └── ShaderToyDecoder.js │ │ │ ├── shaders │ │ │ │ ├── BasicShader.js │ │ │ │ ├── ExposureShader.js │ │ │ │ ├── CopyShader.js │ │ │ │ ├── GammaCorrectionShader.js │ │ │ │ ├── LuminosityShader.js │ │ │ │ ├── UnpackDepthRGBAShader.js │ │ │ │ ├── ColorifyShader.js │ │ │ │ ├── BlendShader.js │ │ │ │ ├── ColorCorrectionShader.js │ │ │ │ ├── TechnicolorShader.js │ │ │ │ ├── VignetteShader.js │ │ │ │ ├── AfterimageShader.js │ │ │ │ ├── MirrorShader.js │ │ │ │ ├── SepiaShader.js │ │ │ │ ├── DOFMipMapShader.js │ │ │ │ ├── FilmShader.js │ │ │ │ ├── NormalMapShader.js │ │ │ │ ├── KaleidoShader.js │ │ │ │ ├── BrightnessContrastShader.js │ │ │ │ ├── RGBShiftShader.js │ │ │ │ ├── BleachBypassShader.js │ │ │ │ ├── LuminosityHighPassShader.js │ │ │ │ └── DotScreenShader.js │ │ │ ├── lights │ │ │ │ └── IESSpotLight.js │ │ │ ├── lines │ │ │ │ ├── Line2.js │ │ │ │ └── WireframeGeometry2.js │ │ │ ├── objects │ │ │ │ ├── InstancedPoints.js │ │ │ │ └── QuadMesh.js │ │ │ ├── loaders │ │ │ │ └── TIFFLoader.js │ │ │ ├── math │ │ │ │ └── ColorConverter.js │ │ │ ├── controls │ │ │ │ └── MapControls.js │ │ │ ├── textures │ │ │ │ └── FlakesTexture.js │ │ │ ├── postprocessing │ │ │ │ ├── ClearPass.js │ │ │ │ └── FilmPass.js │ │ │ ├── webxr │ │ │ │ └── Text2D.js │ │ │ ├── capabilities │ │ │ │ └── WebGPU.js │ │ │ ├── geometries │ │ │ │ ├── ConvexGeometry.js │ │ │ │ └── TextGeometry.js │ │ │ ├── effects │ │ │ │ └── StereoEffect.js │ │ │ ├── misc │ │ │ │ ├── MorphAnimMesh.js │ │ │ │ └── Gyroscope.js │ │ │ ├── curves │ │ │ │ └── NURBSSurface.js │ │ │ └── environments │ │ │ │ └── DebugEnvironment.js │ │ ├── highlight-light.min.css │ │ └── highlight-dark.min.css │ ├── icons │ │ ├── merge.svg │ │ ├── jump.svg │ │ ├── export.svg │ │ ├── array.svg │ │ ├── variable.svg │ │ └── robot.svg │ ├── logo-part-solid.svg │ ├── logo-part-2.svg │ ├── logo-part-1.svg │ ├── logo-part-4.svg │ └── logo-part-3.svg ├── sources │ ├── wpilog │ │ ├── util.js │ │ └── source.js │ ├── ds │ │ ├── util.js │ │ └── source.js │ └── csv │ │ ├── time │ │ └── source.js │ │ └── field │ │ └── source.js ├── planner │ ├── index.html │ └── solver │ │ ├── constants.py │ │ ├── motor.py │ │ └── util.py ├── panel │ ├── index.html │ └── tabs │ │ ├── tooltab.js │ │ └── scouttab.js ├── modal │ ├── style-modal.css │ ├── index.html │ ├── progress │ │ └── app.js │ └── alert │ │ └── app.js ├── pit │ ├── index.html │ └── style.css └── pythontk │ └── index.html ├── .gitignore └── docs ├── pit └── MAIN.md ├── panel └── tabs │ ├── SCOUT.md │ ├── WEBVIEW.md │ ├── TABLE.md │ ├── ADD.md │ ├── LOGGER.md │ └── VIDSYNC.md └── pythontk └── MAIN.md /apps/ptk/__init__.py: -------------------------------------------------------------------------------- 1 | import ptk.util 2 | from ptk.odom2d import Odometry2d 3 | -------------------------------------------------------------------------------- /apps/ptk/app/style2.css: -------------------------------------------------------------------------------- 1 | .odom { 2 | width: 100%; 3 | height: 100%; 4 | } -------------------------------------------------------------------------------- /apps/ptk/app/2024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/team6036/peninsulaportal/HEAD/apps/ptk/app/2024.png -------------------------------------------------------------------------------- /src/assets/ComicSans.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/team6036/peninsulaportal/HEAD/src/assets/ComicSans.ttf -------------------------------------------------------------------------------- /src/assets/app/icon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/team6036/peninsulaportal/HEAD/src/assets/app/icon.icns -------------------------------------------------------------------------------- /src/assets/app/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/team6036/peninsulaportal/HEAD/src/assets/app/icon.ico -------------------------------------------------------------------------------- /src/assets/app/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/team6036/peninsulaportal/HEAD/src/assets/app/icon.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .idea 3 | 4 | node_modules 5 | __pycache__ 6 | 7 | apps/**/package-lock.json 8 | 9 | build 10 | dist 11 | temp -------------------------------------------------------------------------------- /src/assets/modules/three-addons/libs/ammo.wasm.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/team6036/peninsulaportal/HEAD/src/assets/modules/three-addons/libs/ammo.wasm.wasm -------------------------------------------------------------------------------- /src/assets/modules/three-addons/libs/rhino3dm/rhino3dm.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/team6036/peninsulaportal/HEAD/src/assets/modules/three-addons/libs/rhino3dm/rhino3dm.wasm -------------------------------------------------------------------------------- /src/assets/modules/three-addons/libs/draco/draco_decoder.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/team6036/peninsulaportal/HEAD/src/assets/modules/three-addons/libs/draco/draco_decoder.wasm -------------------------------------------------------------------------------- /src/assets/modules/three-addons/libs/basis/basis_transcoder.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/team6036/peninsulaportal/HEAD/src/assets/modules/three-addons/libs/basis/basis_transcoder.wasm -------------------------------------------------------------------------------- /src/assets/modules/three-addons/libs/draco/gltf/draco_decoder.wasm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/team6036/peninsulaportal/HEAD/src/assets/modules/three-addons/libs/draco/gltf/draco_decoder.wasm -------------------------------------------------------------------------------- /src/assets/modules/three-addons/nodes/core/NodeParser.js: -------------------------------------------------------------------------------- 1 | class NodeParser { 2 | 3 | parseFunction( /*source*/ ) { 4 | 5 | console.warn( 'Abstract function.' ); 6 | 7 | } 8 | 9 | } 10 | 11 | export default NodeParser; 12 | -------------------------------------------------------------------------------- /src/assets/modules/three-addons/nodes/core/UniformGroup.js: -------------------------------------------------------------------------------- 1 | class UniformGroup { 2 | 3 | constructor( name ) { 4 | 5 | this.name = name; 6 | 7 | this.isUniformGroup = true; 8 | 9 | } 10 | 11 | } 12 | 13 | export default UniformGroup; 14 | -------------------------------------------------------------------------------- /src/assets/modules/three-addons/renderers/common/Pipeline.js: -------------------------------------------------------------------------------- 1 | class Pipeline { 2 | 3 | constructor( cacheKey ) { 4 | 5 | this.cacheKey = cacheKey; 6 | 7 | this.usedTimes = 0; 8 | 9 | } 10 | 11 | } 12 | 13 | export default Pipeline; 14 | -------------------------------------------------------------------------------- /src/assets/modules/three-addons/nodes/core/NodeVar.js: -------------------------------------------------------------------------------- 1 | class NodeVar { 2 | 3 | constructor( name, type ) { 4 | 5 | this.isNodeVar = true; 6 | 7 | this.name = name; 8 | this.type = type; 9 | 10 | } 11 | 12 | } 13 | 14 | export default NodeVar; 15 | -------------------------------------------------------------------------------- /docs/pit/MAIN.md: -------------------------------------------------------------------------------- 1 | ← Back 2 | 3 |
A simple pit display
6 |A way to use Peninsula Portal's graphical displays within Python
6 |