Skip to content

Instantly share code, notes, and snippets.

View vinaysshenoy's full-sized avatar

Vinay Shenoy vinaysshenoy

  • https://www.qweebi.com
  • Bangalore, India
View GitHub Profile
@vinaysshenoy
vinaysshenoy / MatrixTestView.java
Created November 22, 2016 10:08
Gist to demonstrate using Matrixes to handle gestures for child elements in a View
package com.vinaysshenoy.matrixviewtest;
import android.annotation.TargetApi;
import android.content.Context;
import android.content.res.Resources;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.PointF;
@vinaysshenoy
vinaysshenoy / WebWindow.cs
Created December 3, 2016 12:53 — forked from drawcode/WebWindow.cs
Unity WebWindow (browser within unity editor window, helpful for tools that require a web view or more beyond basic controls).
using UnityEngine;
using UnityEditor;
using System;
using System.Reflection;
public class WebWindow : EditorWindow {
static Rect windowRect = new Rect(100,100,800,600);
static BindingFlags fullBinding = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static;
static StringComparison ignoreCase = StringComparison.CurrentCultureIgnoreCase;
@vinaysshenoy
vinaysshenoy / RxEmissionDelay.java
Created December 19, 2016 16:44
Space out emissions from an Observable by a fixed duration
public static <T> Observable<T> delayEmissions(Observable<T> observable, final long period, final TimeUnit timeUnit) {
return observable.compose(new Observable.Transformer<T, T>() {
@Override
public Observable<T> call(Observable<T> observable) {
return Observable.zip(observable, Observable.interval(period, timeUnit), new Func2<T, Long, T>() {
@Override
public T call(T value, Long tick) {
return value;
}
@vinaysshenoy
vinaysshenoy / SpToPxConvert.java
Created February 21, 2017 05:28
SpPxConvertion
public static float spToPx(float sp) {
return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, sp, Resources.getSystem().getDisplayMetrics());
}
@vinaysshenoy
vinaysshenoy / Filter.java
Created May 20, 2017 11:13
Sieve - Utility classes to allow filtering a master list of items
package com.vinaysshenoy.sieve;
import java.util.List;
/**
* Created by vinaysshenoy on 03/05/17.
*/
public interface Filter<T> {
@vinaysshenoy
vinaysshenoy / BaseActivity.java
Created July 8, 2017 05:31
Fix incorrect density reporting
@Override
protected void attachBaseContext(Context newBase) {
final Resources resources = newBase.getResources();
final DisplayMetrics displayMetrics = resources.getDisplayMetrics();
if (displayMetrics.densityDpi != (int) displayMetrics.xdpi) {
Logger.debug(TAG, "Override configuration!");
final Configuration configuration = resources.getConfiguration();
configuration.densityDpi = (int) displayMetrics.xdpi;
import appleseed as asr
mesh = asr.MeshObject("my_mesh", {})
print mesh
# Vertices
v0 = asr.Vector3f([0.0, 0.0, 0.0])
v1 = asr.Vector3f([1.0, 0.0, 0.0])
v2 = asr.Vector3f([0.0, 0.0, 1.0])
@vinaysshenoy
vinaysshenoy / MatrixTextView.java
Last active August 5, 2017 17:47
Custom view for playing with matrices
package com.vinaysshenoy.multitouch.widget.matrixtest;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.RectF;
import android.support.annotation.Nullable;
import android.util.AttributeSet;
@vinaysshenoy
vinaysshenoy / MatrixViewTestFinal.java
Created August 6, 2017 16:27
Final MatrixTestViewTest
package com.vinaysshenoy.multitouch.widget.matrixtest;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.Path;
import android.graphics.RectF;
import android.support.annotation.Nullable;
@vinaysshenoy
vinaysshenoy / .bash_profile
Created October 26, 2017 10:30
Run emulator via command line
# Add Android SDK Emulator binary to path
export PATH=:<Path To Android SDK>/emulator
# Add alias for running any emulator
alias run_avd='function _run_avd(){ emulator -avd $1 -dns-server 8.8.8.8; };_run_avd'
# To run emulator via command line, there are 2 steps
# $emulator -list-avds
# Above command will list al AVDS available, copy the one you want to launch