-
Potential solution: https://www.gamedev.net/forums/topic/484984-skeletal-animation---non-uniform-scale/
-
Description: https://answers.unrealengine.com/questions/158091/weird-scaling-behaviour-of-actor-hierarchy.html
-
https://www.marti.works/transform-class-position-rotation-and-scale/
-
For constraining point to axis
-
For shoemake constraint
-
Existing libraries
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//: Playground - noun: a place where people can play | |
import UIKit | |
import PlaygroundSupport | |
func setUpDemo() { | |
let testContents = """ | |
This is a test | |
Emojis follow: | |
🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
extension String { | |
// NARROW NO-BREAK SPACE | |
// Unicode: U+202F, UTF-8: E2 80 AF | |
static let narrowNoBreakSpace = "\u{202F}" | |
//MEDIUM MATHEMATICAL SPACE | |
//Unicode: U+205F, UTF-8: E2 81 9F | |
static let mediumMathematicalSpace = "\u{205F}" | |
//HAIR SPACE |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// | |
// TimingFunction.swift | |
// | |
// Created by tcldr on 04/11/2018. | |
// https://github.com/tcldr | |
// Copyright © 2018 tcldr. | |
// | |
// Permission is hereby granted, free of charge, | |
// to any person obtaining a copy of this software and | |
// associated documentation files (the "Software"), to |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// | |
// TYAudioVideoManager.swift | |
// Yash Thaker | |
// | |
// Created by Yash Thaker on 05/12/18. | |
// Copyright © 2018 Yash Thaker. All rights reserved. | |
// | |
/* | |
1) mergeVideos(videoUrls: [URL], exportUrl: URL, preset: String? = nil, progress: @escaping Progress, completion: @escaping Completion) |
Create a Swift Command Line Tool in Xcode. You can then copy and paste the below code into the .swift
and .metal
files respectively
main.swift
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
extension View { | |
func minimumPadding(edges: Edge.Set = .all, _ length: CGFloat = 8) -> some View { | |
GeometryReader { geo in | |
padding(.bottom, edges.contains(.bottom) ? max(length, geo.safeAreaInsets.bottom) : 0) | |
.padding(.top, edges.contains(.top) ? max(length, geo.safeAreaInsets.top) : 0) | |
.padding(.leading, edges.contains(.leading) ? max(length, geo.safeAreaInsets.leading) : 0) | |
.padding(.trailing, edges.contains(.trailing) ? max(length, geo.safeAreaInsets.trailing) : 0) | |
.ignoresSafeArea(edges: edges) | |
} | |
} |