Skip to content

Instantly share code, notes, and snippets.

View sjchoi86's full-sized avatar
🇰🇷
Back in korea

Sungjoon sjchoi86

🇰🇷
Back in korea
View GitHub Profile
class SitePositionIKSolver(object):
"""
Inverse Kinematics (IK) solver for site position targets using Damped Least Squares (DLS) method.
This class provides methods to set up IK targets, configure solver parameters, and compute joint updates to achieve desired site positions.
Usage:
------
# Create IK solver (use all rev joints by default)
ik_solver = SitePositionIKSolver(
@sjchoi86
sjchoi86 / g1_contact_handling_explained.ipynb
Created October 20, 2025 10:49
Uploaded from jupyterlab
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@sjchoi86
sjchoi86 / g1_contact_model_explained.ipynb
Created October 20, 2025 10:49
Uploaded from jupyterlab
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@sjchoi86
sjchoi86 / coupled_ik_allex.ipynb
Created September 4, 2025 15:10
Uploaded from jupyterlab
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@sjchoi86
sjchoi86 / traj_shape.ipynb
Created August 28, 2025 07:20
Uploaded from jupyterlab
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
{
"cells": [
{
"cell_type": "markdown",
"id": "49b65cc2-ef99-4768-a8dc-48cc3bec2e9b",
"metadata": {},
"source": [
"### Trajectory shaping"
]
},
@sjchoi86
sjchoi86 / main.py
Created August 27, 2025 13:01
Static plot widget
# Plot graph
fig = StaticPlotWidget(
title = 'Constant-velocity Interpolated Joint Position Trajectories',
x_offset = 0,
y_offset = 0,
window_width = int(0.5*env.monitor_width),
window_height = int(1.0*env.monitor_height),
x_label = 'time (sec)',
legend = True,
legend_loc = 'top-right'
@sjchoi86
sjchoi86 / ik_mano_simple.ipynb
Created August 24, 2025 16:50
Uploaded from jupyterlab
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@sjchoi86
sjchoi86 / right_hand_simple.xml
Created August 24, 2025 03:03
Uploaded from jupyterlab
<mujoco model="right_mano_hand">
<compiler angle="radian" meshdir="." autolimits="true"/>
<option cone="elliptic" impratio="10"/>
<option timestep="0.002" integrator="implicitfast" />
<asset>
<!-- Skin textures -->
<texture name="tex_skin_light" type="2d" builtin="flat" width="1" height="1" rgb1="0.96 0.79 0.70" rgb2="0.96 0.79 0.70"/>
<texture name="tex_skin_medium" type="2d" builtin="flat" width="1" height="1" rgb1="0.86 0.64 0.52" rgb2="0.86 0.64 0.52"/>
<texture name="tex_skin_tan" type="2d" builtin="flat" width="1" height="1" rgb1="0.74 0.55 0.43" rgb2="0.74 0.55 0.43"/>
@sjchoi86
sjchoi86 / utils.py
Created August 21, 2025 12:45
Uploaded from jupyterlab
import os
import pyautogui
import sys
import time
import cv2
import random
import re
import numpy as np
import cvxpy as cp
import shapely as sp