есть ли простой способ сгенерировать Vector Drawable, который представляет собой круг со значком внутри из существующего векторного Drawable?
как вы хотите, чтобы вы использовали этот вектор для рисования? из файла макета xml? или во время выполнения из java-кода?
Я хотел бы решить ее как можно проще, сгенерировав готовый к использованию VectorDrawable. Никакого кода или изменяемых модификаций.
Просто скачайте Inkscape и изучите основы. И если вам не нужно программное решение, тогда это не по теме для Stack Overflow. :)
Я бы предложил примерно следующее:
<layer-list xmlns:android = "http://schemas.android.com/apk/res/android">
<item
android:gravity = "fill"
android:drawable = "@drawable/ic_brightness_1_black_24dp"
/>
<item
android:gravity = "center"
android:drawable = "@drawable/ic_call_black_24dp"
android:top = "20dp"
android:bottom = "20dp"
android:left = "20dp"
android:right = "20dp"
/>
</layer-list>
Ресурсы с идентификаторами ic_brightness_1_black_24dp и ic_call_black_24dp являются импортированными векторными чертежами.
ic_brightness_1_black_24dp:
<vector xmlns:android = "http://schemas.android.com/apk/res/android"
android:width = "24dp"
android:height = "24dp"
android:viewportWidth = "24.0"
android:viewportHeight = "24.0">
<path
android:fillColor = "#303F9F"
android:pathData = "M12,12m-10,0a10,10 0,1 1,20 0a10,10 0,1 1,-20 0"/>
</vector>
и ic_call_black_24dp:
<vector xmlns:android = "http://schemas.android.com/apk/res/android"
android:width = "24dp"
android:height = "24dp"
android:viewportWidth = "24.0"
android:viewportHeight = "24.0">
<path
android:fillColor = "#FFFFFF"
android:pathData = "M6.62,10.79c1.44,2.83 3.76,5.14 6.59,6.59l2.2,-2.2c0.27,-0.27 0.67,-0.36 1.02,-0.24 1.12,0.37 2.33,0.57 3.57,0.57 0.55,0 1,0.45 1,1V20c0,0.55 -0.45,1 -1,1 -9.39,0 -17,-7.61 -17,-17 0,-0.55 0.45,-1 1,-1h3.5c0.55,0 1,0.45 1,1 0,1.25 0.2,2.45 0.57,3.57 0.11,0.35 0.03,0.74 -0.25,1.02l-2.2,2.2z"/>
</vector>
Да, это идея, однако я хотел бы решить ее как можно проще, сгенерировав готовый к использованию VectorDrawable. Никаких модификаций кода или чертежей.
На самом деле это довольно просто, вам просто нужно включить оба пути в один вектор, поэтому с вашими путями это будет выглядеть следующим образом:
<vector xmlns:android = "http://schemas.android.com/apk/res/android"
android:width = "24dp"
android:height = "24dp"
android:viewportWidth = "24.0"
android:viewportHeight = "24.0">
<path
android:fillColor = "#303F9F"
android:pathData = "M12,12m-10,0a10,10 0,1 1,20 0a10,10 0,1 1,-20 0"/>
<path
android:fillColor = "#FFFFFF"
android:pathData = "M6.62,10.79c1.44,2.83 3.76,5.14 6.59,6.59l2.2,-2.2c0.27,-0.27 0.67,-0.36 1.02,-0.24 1.12,0.37 2.33,0.57 3.57,0.57 0.55,0 1,0.45 1,1V20c0,0.55 -0.45,1 -1,1 -9.39,0 -17,-7.61 -17,-17 0,-0.55 0.45,-1 1,-1h3.5c0.55,0 1,0.45 1,1 0,1.25 0.2,2.45 0.57,3.57 0.11,0.35 0.03,0.74 -0.25,1.02l-2.2,2.2z"/>
</vector>
Результат, очевидно, будет зависеть от размеров путей по отношению друг к другу, и, поскольку масштабирование их без графических инструментов является проблемой, Решение DimDim с layer-list проще реализовать.
Используйте этот способ, 
Я пробовал на своем, и он работает нормально. Это выглядит так.

для button_round: 
использовать свойство фона