'프로그램 사용 > freecad' 카테고리의 다른 글
claude mcp + freecad (0) | 2025.08.31 |
---|---|
freeCAD + openFOAM (0) | 2025.08.29 |
freecad on ubuntu 24.04 (0) | 2025.05.18 |
freecad 예제 (0) | 2024.11.09 |
freecad touchpad (0) | 2024.09.25 |
claude mcp + freecad (0) | 2025.08.31 |
---|---|
freeCAD + openFOAM (0) | 2025.08.29 |
freecad on ubuntu 24.04 (0) | 2025.05.18 |
freecad 예제 (0) | 2024.11.09 |
freecad touchpad (0) | 2024.09.25 |
테스트는 해봐야겠다.
I do not think that there is a graphical configuration interface. Nevertheless, you can do it via scripts... Find the correct name of your device/input: [romano:~/personal/varios] 1 % xsetwacom --list devices Wacom Intuos PT S Finger touch id: 12 type: TOUCH Wacom Intuos PT S Finger pad id: 13 type: PAD Wacom Intuos PT S Pen stylus id: 14 type: STYLUS Wacom Intuos PT S Pen eraser id: 15 type: ERASER And now you can reduce for example to the top left corner: xsetwacom --set "Wacom Intuos PT S Pen stylus" MapToOutput 500x400+0+0 or in a rectangle in the center (more or less): xsetwacom --set "Wacom Intuos PT S Pen stylus" MapToOutput 500x400+500+500 Go back by telling the full resolution: xsetwacom --set "Wacom Intuos PT S Pen stylus" MapToOutput 1980x1080+0+0 There is a way to make the thing permanent, but I never tried it --- if you need it, the Arch page (as ever) is full of interesting info. |
With MapToOutput you can specify a specific screen (e.g.: VGA) or screen size that can let you map the tablet area to two monitors. If what you need is to force proportions or reduce the tablet area, then you can use the xsetwacom parameter Area: $ xsetwacom list parameters | grep Area Area - Valid tablet area in device coordinates. ResetArea - Resets the bounding coordinates to default in tablet units. For example, in my Bamboo tablet, I first reset the area and get its original device coordinates: $ xsetwacom --set "Wacom Bamboo 2FG 4x5 Pen stylus" ResetArea $ xsetwacom --get "Wacom Bamboo 2FG 4x5 Pen stylus" Area 0 0 14720 9200 Then I set them to get a smaller tablet area (1/4th of the tablet area): $ xsetwacom --set "Wacom Bamboo 2FG 4x5 Pen stylus" Area 0 4600 7360 9200 so I can achieve that the bottom-left rectangle maps to the whole screen size. This way, I can reach that whole area with less hand movement. |
[링크 : https://askubuntu.com/questions/547990/how-to-configure-wacom-tablet-area-on-ubuntu-14-04]
+
2025.08.29
wayland 대신 x.org로 부팅하고 아래처럼 입력하니 좌상단에서 중앙까지의 영역만 사용하게 된다.
$ xsetwacom --list devices Wacom Intuos Pro M Pen stylus id: 9 type: STYLUS Wacom Intuos Pro M Pad pad id: 10 type: PAD Wacom Intuos Pro M Finger touch id: 11 type: TOUCH Wacom Intuos Pro M Pen eraser id: 24 type: ERASER Wacom Intuos Pro M Pen cursor id: 25 type: CURSOR $ xsetwacom --get "Wacom Intuos Pro M Pen stylus" Area 0 0 44704 27940 $ xsetwacom --set "Wacom Intuos Pro M Pen stylus" Area 0 0 22352 13970 $ xsetwacom --get "Wacom Intuos Pro M Pen stylus" Area 0 0 22352 13970 |
wayland 에서 하니 설정이 되지 않는다
$ xsetwacom --get "Wacom Intuos Pro M Pen stylus" Area Wayland devices found but this tool is incompatible with Wayland. See https://github.com/linuxwacom/xf86-input-wacom/wiki/Wayland $ xsetwacom --set "Wacom Intuos Pro M Pen stylus" Area 0 0 22352 13970 Wayland devices found but this tool is incompatible with Wayland. See https://github.com/linuxwacom/xf86-input-wacom/wiki/Wayland |
와콤 cth-490 지름 (2) | 2025.09.06 |
---|---|
ubuntu wacom express key 에 esc 등록하기 (0) | 2025.08.29 |
open tablet driver (0) | 2025.08.21 |
와콤 펜 종류 (0) | 2025.08.18 |
wacom 진단 (0) | 2025.08.18 |
armv7 까지는 NEON 이고 armv8 부터는 SVE 라고 이름이 달라지는 듯
Scalable Vector Extension (SVE) is a vector extension the A64 instruction set of the Armv8-A architecture. Armv9-A builds on SVE with the SVE2 extension. Unlike other SIMD architectures, SVE and SVE2 do not define the size of the vector registers, but constrains it to a range of possible values, from a minimum of 128 bits up to a maximum of 2048 in 128-bit wide units. Therefore, any CPU vendor can implement the extension by choosing the vector register size that better suits the workloads the CPU is targeting. The design of SVE and SVE2 guarantees that the same program can run on different implementations of the instruction set architecture without the need to recompile the code. |
[링크 : https://developer.arm.com/Architectures/Scalable%20Vector%20Extensions]
emmc 파티션 정렬 (0) | 2024.02.07 |
---|---|
arm asm rev (0) | 2023.09.14 |
cortex-a53 (0) | 2023.08.31 |
aarch64 vector register (0) | 2023.08.23 |
arm vsub operator (0) | 2023.08.09 |
python 자체적으로 auto vectorization을 지원하는지 모르겠고
-O2 밖에 안되서 어떻게 될지 모르겠지만 혹시나 cython 이라던가 이쪽에서 지원하지 않을가 해서 검색해보니
먼가 하나 나와서 테스트 중
설치는 간단하고
# pip3 install simsimd Collecting simsimd Downloading simsimd-6.5.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.metadata (70 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 70.5/70.5 kB 758.3 kB/s eta 0:00:00 Downloading simsimd-6.5.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (563 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 563.2/563.2 kB 4.6 MB/s eta 0:00:00 Installing collected packages: simsimd Successfully installed simsimd-6.5.1 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv |
[링크 : https://pypi.org/project/simsimd/]
확인도 간단한데
그나저나.. arm aarch64 에서는 neon이 활성화 되는데
10세대 모바일 프로세서에서는 왜.. haswell 이라고 하나만 활성화 될까? skylake 정도는 활성화 되어야 하는거 아닌가?
imx8mp aarch64 | i7-10510U x64 |
>>> import simsimd >>> print(simsimd.get_capabilities()) {'serial': True, 'neon': True, 'sve': False, 'neon_f16': False, 'sve_f16': False, 'neon_bf16': False, 'sve_bf16': False, 'neon_i8': False, 'sve_i8': False, 'haswell': False, 'skylake': False, 'ice': False, 'genoa': False, 'sapphire': False, 'turin': False, 'sierra': False} |
>>> import simsimd >>> print(simsimd.get_capabilities()) {'serial': True, 'neon': False, 'sve': False, 'neon_f16': False, 'sve_f16': False, 'neon_bf16': False, 'sve_bf16': False, 'neon_i8': False, 'sve_i8': False, 'haswell': True, 'skylake': False, 'ice': False, 'genoa': False, 'sapphire': False, 'turin': False, 'sierra': False} |
Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid | flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp vnmi md_clear flush_l1d arch_capabilities vmx flags : vnmi preemption_timer invvpid ept_x_only ept_ad ept_1gb flexpriority tsc_offset vtpr mtf vapic ept vpid unrestricted_guest ple pml ept_mode_based_exec bugs : spectre_v1 spectre_v2 spec_store_bypass swapgs itlb_multihit srbds mmio_stale_data retbleed eibrs_pbrsb gds bhi |
그런데 dot 이랑 cosine이랑 무슨 차이지 계산한 값이 많이 다른 느낌인데..
simsimd.cos()는 1 에서 빼줘야 맞다.
python 원하는 버전 설치 및 연결하기 (0) | 2025.08.26 |
---|---|
pip 패키지 완전 삭제하기 (0) | 2025.08.13 |
pip install cmake build multi core support (0) | 2025.08.13 |
python 빌드 정보 (0) | 2025.08.04 |
python용 얼굴탐지, 인식 (0) | 2025.08.04 |
element는 gst-inspector로 확인하는 개별 기능(?)
pads는 대개 source, sink로 표현되는 입출력
bins는 모르겠고.. pipeline은 element(요소)들을 pads를 통해 데이터를 흐르도록 하는 연결의 모임 으로 보면 될 듯
element | An element is the most important class of objects in GStreamer |
pads | Pads are an element's input and output, where you can connect other elements |
bins | A bin is a container for a collection of elements. |
pipeline | A pipeline is a top-level bin. |
엘리먼트는 크게 세가지로 나누어 지는데
source만 있는 source element(v4l2src 등)
source와 sink가 있는 filter element, demuxer
sink만 있는 sink element(waylandsink, autoviedeosink 등) 이 있다.
또한 name 을 이용해서 named element로 사용할 수 있다.
source element | Source elements generate data for use by a pipeline, for example reading from disk or from a sound card. | ![]() |
Filters, convertors, demuxers, muxers and codecs | Filters and filter-like elements have both input and outputs pads. | ![]() ![]() |
Sink elements | Sink elements are end points in a media pipeline. | ![]() |
element에는 properties가 존재하는데
일부는 설정용도로 쓸 수 있고, 일부는 상태정보를 폴링(polling)으로 읽어갈 수 있다.
$ gst-inspect-1.0 autovideosink Factory Details: Rank none (0) Long-name Auto video sink Klass Sink/Video Description Wrapper video sink for automatically detected video sink Author Jan Schmidt <thaytan@noraisin.net> Plugin Details: Name autodetect Description Plugin contains auto-detection plugins for video/audio in- and outputs Filename /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstautodetect.so Version 1.20.3 License LGPL Source module gst-plugins-good Source release date 2022-06-15 Binary package GStreamer Good Plugins (Ubuntu) Origin URL https://launchpad.net/distros/ubuntu/+source/gst-plugins-good1.0 GObject +----GInitiallyUnowned +----GstObject +----GstElement +----GstBin +----GstAutoDetect +----GstAutoVideoSink Implemented Interfaces: GstChildProxy Pad Templates: SINK template: 'sink' Availability: Always Capabilities: ANY Element has no clocking capabilities. Element has no URI handling capabilities. Pads: SINK: 'sink' Element Properties: async-handling : The bin will handle Asynchronous state changes flags: readable, writable Boolean. Default: false filter-caps : Filter sink candidates using these caps. flags: readable, writable, 0x2000 video/x-raw message-forward : Forwards all children messages flags: readable, writable Boolean. Default: false name : The name of the object flags: readable, writable, 0x2000 String. Default: "autovideosink0" parent : The parent of the object flags: readable, writable, 0x2000 Object of type "GstObject" sync : Sync on the clock flags: readable, writable Boolean. Default: true ts-offset : Timestamp offset in nanoseconds flags: readable, writable Integer64. Range: -9223372036854775808 - 9223372036854775807 Default: 0 |
Properties and values Properties are used to describe extra information for capabilities. A property consists of a key (a string) and a value. |
주기적으로 읽는게 싫다면 signal을 제공하는 엘리먼트를 통해 이벤트 발생시 값을 수신할 수 있다.
$ gst-inspect-1.0 fpsdisplaysink Factory Details: Rank none (0) Long-name Measure and show framerate on videosink Klass Sink/Video Description Shows the current frame-rate and drop-rate of the videosink as overlay or text on stdout Author Zeeshan Ali <zeeshan.ali@nokia.com>, Stefan Kost <stefan.kost@nokia.com> Plugin Details: Name debugutilsbad Description Collection of elements that may or may not be useful for debugging Filename /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libgstdebugutilsbad.so Version 1.20.3 License LGPL Source module gst-plugins-bad Source release date 2022-06-15 Binary package GStreamer Bad Plugins (Ubuntu) Origin URL https://launchpad.net/distros/ubuntu/+source/gst-plugins-bad1.0 GObject +----GInitiallyUnowned +----GstObject +----GstElement +----GstBin +----GstFPSDisplaySink Implemented Interfaces: GstChildProxy Pad Templates: SINK template: 'sink' Availability: Always Capabilities: ANY Element has no clocking capabilities. Element has no URI handling capabilities. Pads: SINK: 'sink' Element Properties: async-handling : The bin will handle Asynchronous state changes flags: readable, writable Boolean. Default: false fps-update-interval : Time between consecutive frames per second measures and update (in ms). Should be set on NULL state flags: readable, writable Integer. Range: 1 - 2147483647 Default: 500 frames-dropped : Number of frames dropped by the sink flags: readable Unsigned Integer. Range: 0 - 4294967295 Default: 0 frames-rendered : Number of frames rendered flags: readable Unsigned Integer. Range: 0 - 4294967295 Default: 0 last-message : The message describing current status flags: readable String. Default: null max-fps : Maximum fps rate measured. Reset when going from NULL to READY.-1 means no measurement has yet been done flags: readable Double. Range: -1 - 1.797693e+308 Default: -1 message-forward : Forwards all children messages flags: readable, writable Boolean. Default: false min-fps : Minimum fps rate measured. Reset when going from NULL to READY.-1 means no measurement has yet been done flags: readable Double. Range: -1 - 1.797693e+308 Default: -1 name : The name of the object flags: readable, writable, 0x2000 String. Default: "fpsdisplaysink0" parent : The parent of the object flags: readable, writable, 0x2000 Object of type "GstObject" signal-fps-measurements: If the fps-measurements signal should be emitted. flags: readable, writable Boolean. Default: false silent : Don't produce last_message events flags: readable, writable Boolean. Default: false sync : Sync on the clock (if the internally used sink doesn't have this property it will be ignored flags: readable, writable Boolean. Default: true text-overlay : Whether to use text-overlay flags: readable, writable Boolean. Default: true video-sink : Video sink to use (Must only be called on NULL state) flags: readable, writable Object of type "GstElement" Element Signals: "fps-measurements" : void user_function (GstElement* object, gdouble arg0, gdouble arg1, gdouble arg2, gpointer user_data); |
Signals GObject signals can be used to notify applications of events specific to this object. Note, however, that the application needs to be aware of signals and their meaning, so if you're looking for a generic way for application-element interaction, signals are probably not what you're looking for. In many cases, however, signals can be very useful. See the GObject documentation for all internals about signals. |
[링크 : https://gstreamer.freedesktop.org/documentation/plugin-development/basics/signals.html?gi-language=c]
bin - pipeline의 하위라는데 알아서 해주는게 포인트라고 보면되나?
$ gst-inspect-1.0 | grep bin camerabin: camerabin: Camera Bin camerabin: viewfinderbin: Viewfinder Bin camerabin: wrappercamerabinsrc: Wrapper camera src element for camerabin2 closedcaption: cccombiner: Closed Caption Combiner cluttergst3: clutterautovideosink: Generic bin codecalpha: alphacombine: Alpha Combiner codecalpha: vp8alphadecodebin: VP8 Alpha Decoder codecalpha: vp9alphadecodebin: VP9 Alpha Decoder debugutilsbad: testsrcbin: Generic bin dvb: dvbbasebin: DVB bin encoding: encodebin: Encoder Bin encoding: encodebin2: Encoder Bin libav: avdec_binkaudio_dct: libav Bink Audio (DCT) decoder libav: avdec_binkaudio_rdft: libav Bink Audio (RDFT) decoder libav: avdec_binkvideo: libav Bink video decoder libav: avdec_bintext: libav Binary text decoder libav: avdec_xbin: libav eXtended BINary text decoder opengl: glfilterbin: GL Filter Bin opengl: glmixerbin: OpenGL video_mixer empty bin opengl: glsinkbin: GL Sink Bin opengl: glsrcbin: GL Src Bin opengl: glstereomix: OpenGL stereo video combiner opengl: glvideomixer: OpenGL video_mixer bin playback: decodebin: Decoder Bin playback: decodebin3: Decoder Bin 3 playback: parsebin: Parse Bin playback: playbin: Player Bin 2 playback: playbin3: Player Bin 3 playback: uridecodebin: URI Decoder playback: uridecodebin3: URI Decoder playback: urisourcebin: URI reader resindvd: rsndvdbin: rsndvdbin rist: roundrobin: Round Robin rtpmanager: rtpbin: RTP Bin staticelements: bin: Generic bin switchbin: switchbin: switchbin transcode: transcodebin: Transcode Bin transcode: uritranscodebin: URITranscode Bin vaapi: vaapidecodebin: VA-API Decode Bin webrtc: webrtcbin: WebRTC Bin |
Play a media file using playbin (as in Basic tutorial 1: Hello world!): gst-launch-1.0 playbin uri=https://gstreamer.freedesktop.org/data/media/sintel_trailer-480p.webm A fully operation playback pipeline, with audio and video (more or less the same pipeline that playbin will create internally): gst-launch-1.0 souphttpsrc location=https://gstreamer.freedesktop.org/data/media/sintel_trailer-480p.webm ! matroskademux name=d ! queue ! vp8dec ! videoconvert ! autovideosink d. ! queue ! vorbisdec ! audioconvert ! audioresample ! autoaudiosink |
[링크 : https://gstreamer.freedesktop.org/documentation/tutorials/basic/hello-world.html?gi-language=c]
[링크 : https://gstreamer.freedesktop.org/documentation/tutorials/basic/gstreamer-tools.html?gi-language=c]
[링크 : http://ttps://medium.com/may-i-lab/gstreamer-gstreamer-기초-da5015f531fc]
gstpipelinestudio (0) | 2025.09.11 |
---|---|
gstreamer pipeline (0) | 2025.08.22 |
gstreamer tee 예제 (0) | 2025.08.21 |
gstreamer capsfilter (0) | 2025.08.21 |
gstreamer parse_launch (0) | 2024.01.11 |
app.asar 이라는 파일이 있어서 찾아보니 electron의 컴파일(?)된 파일이라고 한다.
압축되어 있다는데 data 파일로만 나와서 zip 등으로 풀순 없고
npx asar extract 명령을 통해서 특정 디렉토리에 풀면된다.
$ npx asar extract app.asar asarResources Need to install the following packages: asar Ok to proceed? (y) npm WARN deprecated asar@3.2.0: Please use @electron/asar moving forward. There is no API change, just a package name change npm WARN deprecated @types/minimatch@6.0.0: This is a stub types definition. minimatch provides its own type definitions, so you do not need this installed. npm WARN deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported npm WARN deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. |
[링크 : https://til.jooy2.com/language/javascript/library-and-frameworks/electron/unpack-asar-file-format]
[링크 : https://richong.tistory.com/447]
$ asar pack app app.asar --unpack *.node |
[링크 : https://www.electronjs.org/docs/latest/tutorial/asar-archives]
node excel export (0) | 2024.07.18 |
---|---|
web qr decoder (0) | 2024.04.04 |
node.js 웹소켓 채팅 서버 예제 (0) | 2022.07.14 |
ubuntu 18.04 / nodej.s 18.x 실패 (0) | 2022.05.19 |
웹소켓 (0) | 2022.03.25 |
FATAL:gpu_data_manager_impl_private.cc(415)] GPU process isn't usable. Goodbye. |
It is Electron issue, when Electron-libs don't match your system --in-process-gpu option helps as workaround.
Also --disable-gpu-sandbox or --no-sandbox options helps too |
[링크 : https://github.com/Automattic/simplenote-electron/issues/3096]
$ sudo ./eiq-portal [37727:0826/154023.382498:FATAL:electron_main_delegate.cc(252)] Running as root without --no-sandbox is not supported. See https://crbug.com/638180. Trace/breakpoint trap |
vainfo (0) | 2025.09.03 |
---|---|
ubuntu nvidia 드라이버 설치 (0) | 2025.09.03 |
eiq 학습 시도 (0) | 2025.08.26 |
nvidia tao toolkit (0) | 2025.08.22 |
eqi - model tool (0) | 2025.08.22 |
cpu로 일단 굴리는 중 (g4400t야 힘내!!)
cpu라 학습도 느리고, 1000번 정도 돌린걸로는 0.1 정도 밖에 안되서
다시 0.9를 넘길때 까지 무한 뺑뻉이 돌리는 중
현재까진 윈도우에서만 되고
ubuntu 22.04 + eiq 1.16 실패
ubuntu 22.04 + eiq 1.16 실패.
전찬리에 실패중!
ubuntu nvidia 드라이버 설치 (0) | 2025.09.03 |
---|---|
eiq 에러들 (0) | 2025.08.26 |
nvidia tao toolkit (0) | 2025.08.22 |
eqi - model tool (0) | 2025.08.22 |
NNstreamer - tensor* (0) | 2025.08.18 |
ppa 추가해서 원하는 버전 설치하고, update-alternatives로 연결하면 된다.
sudo apt install software-properties-common sudo add-apt-repository ppa:deadsnakes/ppa sudo apt update sudo apt install python3.7 |
[링크 : https://askubuntu.com/questions/1251318/how-do-you-install-python3-7-to-ubuntu-20-04]
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 1 |
[링크 : https://sosodev.tistory.com/entry/Python-pyenv-특정-버전을-설치하기-Ubuntu]
python simsimd (0) | 2025.08.28 |
---|---|
pip 패키지 완전 삭제하기 (0) | 2025.08.13 |
pip install cmake build multi core support (0) | 2025.08.13 |
python 빌드 정보 (0) | 2025.08.04 |
python용 얼굴탐지, 인식 (0) | 2025.08.04 |
우리 동네에서는 800원인가에 샀던거 같은데
회사다가다가 샀더니 4천원.. -_-
3천원 붙어있는데 4천원 결제해서
퇴근길에 항의하러 가니 4천원이 맞고 라벨이 안바뀐거라
아니.. 메이드 인 차이나인데다가 작은거고
멸균도 아닌데 4천원 너무 한거 아냐?
멘탈 크래시 크래시 (0) | 2025.09.18 |
---|---|
외근 (0) | 2025.09.09 |
어우 피곤 (0) | 2025.08.05 |
절래절래 (0) | 2025.07.09 |
난 멀하고 싶은걸까? (1) | 2025.06.27 |